0

我尝试在 rowcommand 事件上使用带有我的 datagridview 的更新面板来显示一个对话框。当我删除更新面板时它工作正常,但它不起作用。

我用更新面板尝试了以下配置,但它不起作用。

<asp:UpdatePanel ID="UpdatePaneldgv" runat="server" UpdateMode="Conditional" ChildrenAsTriggers="false">
 <Triggers >
 <asp:AsyncPostBackTrigger ControlID="dgvVehiclesType" EventName ="RowCommand" />
 </Triggers>
<ContentTemplate>                
<div class="tab-content">
 <div class="tab-pane fade in active">
 <asp:GridView ID="dgvVehiclesType" runat="server" GridLines="None" OnRowCommand="dgvVehiclesType_RowCommand" PageSize="10">
 <Columns>
 <asp:BoundField DataField="OptionID" HeaderText="# ID" ReadOnly="True"/>
 <asp:BoundField DataField="OptionName" HeaderText="Name" ReadOnly="True" />
 <asp:ButtonField ButtonType="Image" CommandName="cmdEdit" ImageUrl="~/img/view.png" />
 </Columns>
 </asp:GridView>
 </div>
 </div>
 </ContentTemplate>
 </asp:UpdatePanel>

行命令后端事件

 switch (e.CommandName)
        {
            case "cmdEdit":
                //  show form            
ClientScript.RegisterStartupScript(GetType(), "Show", "<script> $('#formModal').modal('toggle');</script>");
                break;
            default:
                break;
        }

有什么建议吗??或参考

4

1 回答 1

0

<asp:Button />在您的 GridView 中看不到任何内容。当在 GridView 控件中单击按钮时,会发生 RowCommand 方法。

此外,您不必为此使用触发器,您可以删除这些行。

我们可以在代码隐藏中看到您的 RowCommand 方法吗?它应该是这样的:

public void dgvVehiclesType_RowCommand (object sender, EventArgs e)
{
  //do something
}

希望能帮助到你。

于 2014-10-28T13:40:45.077 回答