Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在c中单击从onserverclick获取值_C# - Fatal编程技术网

C# 在c中单击从onserverclick获取值

C# 在c中单击从onserverclick获取值,c#,C#,如何通过单击按钮从gridview中的行中获取值 这是我的代码: <dx:ASPxGridView ID="gvwListApprover" runat="server" Width="460px"> <Columns> <dx:GridViewDataTextColumn Caption="No" FieldName="Sequential" Width="20px"></dx:G

如何通过单击按钮从gridview中的行中获取值

这是我的代码:

<dx:ASPxGridView ID="gvwListApprover" runat="server" Width="460px">
                <Columns>
                    <dx:GridViewDataTextColumn Caption="No" FieldName="Sequential" Width="20px"></dx:GridViewDataTextColumn>
                    <dx:GridViewDataTextColumn Caption="KodePosition" FieldName="KodePosition" Width="175px"></dx:GridViewDataTextColumn>
                    <dx:GridViewDataTextColumn Caption="Jabatan" FieldName="NamaPosition" Width="175px"></dx:GridViewDataTextColumn>
                    <dx:GridViewDataTextColumn Caption="Nama" FieldName="UserLogin" Width="265px"></dx:GridViewDataTextColumn>
                    <dx:GridViewDataTextColumn ReadOnly="True" Caption="Action">
                        <DataItemTemplate>
                           <input type="button" id="btnDelApp" onserverclick="btnDelApp_ServerClick('<%#Eval("KodePosition")%>');" value="Delete" runat="server" class="lookupstyle" />
                        </DataItemTemplate>
                    </dx:GridViewDataTextColumn>
                </Columns>
            </dx:ASPxGridView>
请更正并给我解决方案。
谢谢

您可以使用单击的RowDataBound事件。 不要为控件添加任何解释事件。 GridView会自动检测在其中单击的控件的事件

protected void grdClickDoubleClick_RowDataBound(object sender, GridViewRowEventArgs e) //formatted the c# code

{ 

     GridViewRow row = e.Row;

     if (row.RowType == DataControlRowType.DataRow)

     {

          //*******************************************************8

          // code here. (This code given below)

          //

     }

}
对于单击事件分配

 LinkButton _singleClickButton = row.FindControl("lnkBtnClk") asLinkButton;

 string _jsSingleClick = ClientScript.GetPostBackClientHyperlink(_singleClickButton, "");

 e.Row.Attributes.Add("onclick", _jsSingleClick);
 LinkButton _dblClickButton = row.FindControl("lnkBtnDblClk") asLinkButton;

 string _jsDoubleClick = ClientScript.GetPostBackClientHyperlink(_dblClickButton, "");

 e.Row.Attributes.Add("ondblclick", _jsDoubleClick);
对于双击事件分配

 LinkButton _singleClickButton = row.FindControl("lnkBtnClk") asLinkButton;

 string _jsSingleClick = ClientScript.GetPostBackClientHyperlink(_singleClickButton, "");

 e.Row.Attributes.Add("onclick", _jsSingleClick);
 LinkButton _dblClickButton = row.FindControl("lnkBtnDblClk") asLinkButton;

 string _jsDoubleClick = ClientScript.GetPostBackClientHyperlink(_dblClickButton, "");

 e.Row.Attributes.Add("ondblclick", _jsDoubleClick);
我们可以按如下所示的行内命令方法处理此分配的事件

protected void grdClickDoubleClick_RowCommand(object sender, GridViewCommandEventArgs e)

{

     GridViewRow row = (GridViewRow)((Control)e.CommandSource).NamingContainer;

     switch (e.CommandName)

     {

          case"clk": //"clk" is command name of linkButton Row click event handler

               grdClickDoubleClick.SelectedIndex = row.RowIndex;

          break;

          case"dblClk"://"dblClk" is command name of linkButton Row Double click event handler.

               row.BackColor = System.Drawing.Color.Pink;

          break;

     }

}
如果我们想同时处理点击和双击,那么我们必须改变上面的点击处理程序,如下所示

 LinkButton _singleClickButton = row.FindControl("lnkBtnClk") asLinkButton;

 string _jsSingleClick = ClientScript.GetPostBackClientHyperlink(_singleClickButton, "");



 ///We make the script as below format.

 //javascript:setTimeout("POSTBACK SCRIPT", 500)

 _jsSingleClick = _jsSingleClick.Insert(11, "setTimeout(\"");

 _jsSingleClick += "\", 500)";



 e.Row.Attributes.Add("onclick", _jsSingleClick);

然后我们可以处理行单击和双击。

如果行中有一个带有锚定链接的列,比如:?