日期:2014-05-18  浏览次数:20417 次

GridView--------选择问题
一个Gridview.显示一组数据列表
一个panel.
GridView中有一个选择按扭
问题1:怎样把这个选择按扭设置成BUTTON模式?(现在是HyperLink)
问题2:当点击BUTTON的时候。怎样才能取得选择的这一行的参数值?是否是取主键?
如果取得主键以后。我要将这个主键数值显示在西面panel的TEXT1中。应该怎么做?

------解决方案--------------------
如果用的默认的选择按钮

把这个选择按扭设置成BUTTON模式

<asp:GridView ID= "GridView1 " runat= "server ">
<Columns>
<asp:CommandField ButtonType= "Button " ShowSelectButton= "True " />
</Columns>
</asp:GridView>
------解决方案--------------------
问题1:怎样把这个选择按扭设置成BUTTON模式?(现在是HyperLink)
-------------------------------
直接换成button就行了啊


假设你绑定的是DATASET,主键字段是id.
在gridview中加1个模板列,模板列放1个BUTTON,社会只button 的CommandName= "myEdit " CommandArgument= 'Eval( "id ") '

然后注册gridview的RowCommand事件,在gridview的RowCommand中写下面的代码:

if(e.CommandName= "myEdit ")
{
// 取你点击行的主键值
string id = e.CommandArgument;
// 赋值给panel的TEXT1中
TEXT1.Text = id;
}


------解决方案--------------------
问题1:怎样把这个选择按扭设置成BUTTON模式?(现在是HyperLink)
使用模板列
问题2:当点击BUTTON的时候。怎样才能取得选择的这一行的参数值?是否是取主键?
如果取得主键以后。我要将这个主键数值显示在西面panel的TEXT1中。应该怎么做?
设置
GridView1.DataKeyNames = "主键字段名 ";
设置Button 的CommandName= "select ";
在GridView1的SelectedIndexChanged事件中给panel的TEXT1赋值
GridView1.SelectedDataKey[0] //取主键字段值
------解决方案--------------------
<asp:GridView ID= "GridView1 " runat= "server ">
<Columns>
<asp:CommandField ButtonType= "Button " ShowSelectButton= "True " />
</Columns>
</asp:GridView>


得到选中行的主键数值,前提是GridView有设置过DataKeyNames= "主键字段 "

protected void GridView1_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
{
TextBox1.Text = GridView1.DataKeys[e.NewSelectedIndex].Value.ToString();
}