单击按钮后不会触发

单击按钮后不会触发

本文介绍了单击按钮后不会触发 Rowcommand的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经找到了解决方案,我只是想发布它,所以这可能对某些人有用

这是使用命令的按钮

<dxwgv:ASPxGridView ID="gdvxUsers" runat="server" AutoGenerateColumns="False" Width="100%" KeyFieldName="UserName" onrowcommand="gdvxUsers_RowCommand">
        <Columns>
        <dxwgv:GridViewDataTextColumn Caption="Edit" VisibleIndex="0" Width="0px">
            <DataItemTemplate>
                <asp:ImageButton ID="imbEdit" runat="server"
                    CommandName = "Edit"
                    ImageUrl="~/images/icon/Edit-icon.png" ClientIDMode="Static" />
            </DataItemTemplate>
        </dxwgv:GridViewDataTextColumn>
</dxwgv:ASPxGridView>
    protected void gdvxUsers_RowCommand(object sender, DevExpress.Web.ASPxGridView.ASPxGridViewRowCommandEventArgs e)
    {
        switch (e.CommandArgs.CommandName)
        {
            case "Edit":



            break;
        }
    }

单击按钮时不会触发行命令.

The Row Command is not fire when the button is clicked.

推荐答案

问题是在 Page_Load 上我在使用的 gridview 上使用 Databind() 命令rowcommand,好像在DataBind()之后,rowcommand被取消了.

The Problem is that on Page_Load I use Databind() command on the gridview I'm using rowcommand, it seems that after DataBind(), rowcommand is cancelled.

    protected void Page_Load(object sender, EventArgs e)
    {
            gdvxUsers.DataSource = GetAllUserAndRole();
            gdvxUsers.DataBind();
    }

所以我通过只在第一次加载时绑定数据来解决这个问题.

So I fix this problem by binding data only on first load.

    protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
        {
            gdvxUsers.DataSource = GetAllUserAndRole();
            gdvxUsers.DataBind();
        }
    }

这篇关于单击按钮后不会触发 Rowcommand的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-07 02:29