Asp.net 选择行事件上的gridview
如何在select row事件上执行grdiview?在源页面上,我添加了Asp.net 选择行事件上的gridview,asp.net,c#-4.0,gridview,Asp.net,C# 4.0,Gridview,如何在select row事件上执行grdiview?在源页面上,我添加了 OnSelectedIndexChanged="grdTanks_OnSelectRow" 在后面的代码中,我将函数 protected void grdTanks_OnSelectRow(Object sender, GridViewCommandEventArgs e) { } 当我尝试这样做时,grdTanks_onseRow匹配委托的“System.E
OnSelectedIndexChanged="grdTanks_OnSelectRow"
在后面的代码中,我将函数
protected void grdTanks_OnSelectRow(Object sender, GridViewCommandEventArgs e)
{
}
当我尝试这样做时,grdTanks_onseRow匹配委托的“System.EventHandler”不会出现重载
如果我将GridViewComandEventArgs更改为EventArgs,那么它将不允许我这样做
if (e.CommandName == "Select")
有人知道如何为gridview举办OnSetrow活动吗?谢谢
我还添加了以下代码:
protected void grdTanks_RowDataBound(Object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
if (e.Row.RowIndex != -1)
{
e.Row.Attributes["onmouseover"] = "this.style.cursor='hand';this.style.background='#3260a0';;this.style.color='white'";
if (e.Row.RowIndex % 2 == 1)
{
e.Row.Attributes["onmouseout"] = "this.style.textDecoration='none';this.style.background='white';this.style.color='black'";
}
else
{
e.Row.Attributes["onmouseout"] = "this.style.textDecoration='none';this.style.background='#bEc8bE';this.style.color='black'";
}
e.Row.Attributes["onclick"] = ClientScript.GetPostBackClientHyperlink(this.grdTanks, "Select$" + Convert.ToString(DataBinder.Eval(e.Row.DataItem, "CargoTankID")));
}
}
}
我想你必须改变
protected void grdTanks_OnSelectRow(Object sender, GridViewCommandEventArgs e)
到
在你的代码背后我认为你必须改变
protected void grdTanks_OnSelectRow(Object sender, GridViewCommandEventArgs e)
到
在代码隐藏中,您可以尝试以下操作:
在加载页面中,输入
grdTanks.SelectedIndexChanged +=
然后按tab键两次。Visual Studio会自动为您生成处理程序。第二个参数是EventArgs您可以尝试以下方法:
在加载页面中,输入
grdTanks.SelectedIndexChanged +=
然后按tab键两次。Visual Studio会自动为您生成处理程序。第二个参数是EventArgs我不确定您想在这个事件处理程序中执行什么操作。您已经在处理select事件,我认为无需再次检查e.CommandName==select.:单击行的选择按钮时,将引发SelectedIndexChanged事件。 错误表示事件没有重载,您必须使用EventArgs参数
protected void grdTanks_OnSelectRow(Object sender, EventArgs e)
{
// May be you want like..
// Get the currently selected row using the SelectedRow property.
GridViewRow row = YourGridViewID.SelectedRow;
}
我不确定您希望在此事件处理程序中执行什么操作。您已经在处理select事件,我认为无需再次检查e.CommandName==select.:单击行的选择按钮时,将引发SelectedIndexChanged事件。 错误表示事件没有重载,您必须使用EventArgs参数
protected void grdTanks_OnSelectRow(Object sender, EventArgs e)
{
// May be you want like..
// Get the currently selected row using the SelectedRow property.
GridViewRow row = YourGridViewID.SelectedRow;
}
实际上,我正在将现有代码从vb转换为c。这就是vb中的情况,但我现在尝试将其忽略,因为我也没有看到这样做的原因,e.CommandName==select可能是您在vb.net网格中使用onrow命令或其他命令。因为无论是使用c还是vb.net,命令参数都不应该不同。我通过在源代码页上使用OnRowCommand修复了它,在vb页上,它没有,不知道为什么…我实际上是在将现有代码从vb转换为c。这就是vb中的情况,但我现在尝试将其忽略,因为我也没有看到这样做的原因,e.CommandName==select可能是您在vb.net网格中使用onrow命令或其他命令。因为无论是使用c还是vb.net,命令参数都不应该不同。我通过在源页面上使用OnRowCommand修复了它,在vb页面上,它没有,不知道为什么…我可以访问该函数,所以这不是问题所在。我在那里放了一个断点,它碰到了断点。我试着把vb代码转换成c,所以我试着保持原样,但现在我意识到我可能需要稍微修改一下,让你使用gridview或任何其他控件,我可以访问函数,所以这不是问题所在。我在那里放了一个断点,它碰到了断点。我试着将vb代码转换成c,所以我试着保持原样,但现在我意识到我可能需要对它进行一些更改。使用gridview或任何其他控件时,你不知道你能做到这一点,这很酷,谢谢。我调用的事件处理程序被调用,只是尝试使用c中vb中的代码,它没有完全按照原样转换,这并不奇怪。不知道你能做到这一点,这很酷,谢谢。我正在调用的事件处理程序被调用,只是尝试使用c中vb中的代码,它没有完全按照原样转换,这一点也不奇怪。