我在DataGrid的属性生成加了好几列选择列
每一个选择列都用来邦定数据库中的数据的
这样做的目的就是要实现只要点击DataGrid中的数据就可以对其进行相应的修改或删除操作
但是我现在不可以获取到先中行的值
private void Dat_Xianshi_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
if(e.CommandName=="Select")
{
string dd=e.Item.Cells[0].Text;
}
}
private void Dat_Xianshi_SelectedIndexChanged_1(object sender, System.EventArgs e)
{
 string dd = Dat_Xianshi.SelectedItem.Cells[0].Text;

}
只用一个 按钮列中的选择列时以两种方法都可以取到值
但是我现在用的是多列就取不到值了....
请各位大哥给指点指点..

解决方案 »

  1.   

    1.多个列用不通的CommandName
    2.取值时string dd=e.Item.Cells[0].Text;
      可以取其他Cells的值嘛(e.g Cells[1]....).
    3.再或者,你没个列有自己的ID吧,也可以通过 e.Item.FindControl("ID")来找到这个控件,再取值
      

  2.   

    注意 select的大小写.2.Cells[0]有没有文字?
      

  3.   

    多个列用相同的commandName是没有影响的.
      

  4.   


    好久没来。net区,好好和四星大哥学学!!
      

  5.   

    同意
    Top  
     cpp2017(慕白兄) 不过最好不好这么做。最好用ajax。js实现。
      

  6.   

    上面的问题已经搞定..........
    如果所有的列都用按钮列中的选择列是取不到值的现在我想问的是 怎么样通过写代码的方法 将DataSet中的数据(变化的且列名可能不同)邦定到   按钮列中的 选择列上去....不知道能否通过写代码的方法实现..
      

  7.   

    <Columns>
    <asp:ButtonColumn Text="选择" DataTextField="tagname" HeaderText="test" CommandName="Select"></asp:ButtonColumn>
    </Columns>是这个意思么?绑定数据?