当前位置: 代码迷 >> ASP.NET >> 怎么判断和区分gridview模版列
  详细解决方案

怎么判断和区分gridview模版列

热度:8818   发布时间:2013-02-25 00:00:00.0
如何判断和区分gridview模版列
在gridview中有多个模版列,其中用两个LinkButton列,点击不同的LinkButton列实现不同操作,在SelectedIndexChanged中如何判断是点的不同的列,也就是如何取ID值?

------解决方案--------------------------------------------------------
有个datakeysname属性,你设成绑定时的id后,那么你点击某一列就可以取得此id。如果你只是想取得索引。那么你可以真接通过e的参数去取得。

-------------------------------------------
MSN:bdbox@hotmail.com
请给我与您交流的机会
------解决方案--------------------------------------------------------
commandname= "按钮名 " 再通过e.commandname来区分
------解决方案--------------------------------------------------------
给每个LinkButton一个CommandName,然后通过e.CommandName进行区分
------解决方案--------------------------------------------------------
换ButtonFiled吧 视觉效果是一样的
然后设置CommandName区分
------解决方案--------------------------------------------------------
commandname= "按钮名 " 再通过e.commandname来区分
------解决方案--------------------------------------------------------
根据孟子老大的一句经典回复:CommandArgument= ' <%#DataBinder.Eval(Container, "RowIndex ")%> ',我推断,是不是这样,先把行号绑定给模版列上按钮的CommandArgument属性,然后把模版列上按钮的onclick事件选择到一个写好的onclick事件上,再根据e.CommandName和CommandArgument进行相关操作。

事件不会出发GridView的ItemCommand,估计得自己写。

------解决方案--------------------------------------------------------
CommandName= "a "

CommandName= "b "

protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
int nIdx = EConvert.ToInt(e.CommandArgument.ToString());

GridViewRow row = this.GridView1.Rows[nIdx];

string strFID = row.Cells[0].Text;
try
{
switch (e.CommandName)
{
case "a ":
...
break;
case "b ":
...
break;
}
}
catch (Exception ex)
{
EScript.PopEx(this, "GridView1_RowCommand ", "数据处理时出错:\\n " + ex.Message);
}
}
  相关解决方案