想问一个GridView与数据表绑定的问题!!!!!!所有分全部用上了
Dim dtset As New Data.DataSet
...这之间是建立命令对象并填空dtset中的表 "lgh "等
GridView1.DataSource = dtset
GridView1.DataMember = "lgh "
GridView1.DataBind()
我发现能够显示sql2000数据库中的表的所有的数据!
现在我想问两个问题:
1、表 "lgh "是从数据库中的表查询来的。有下列字段:
Forum_Id(int)、Topic(nvarchar)、Author(nchar)、TopicTime(datetime)。
现在我想控制GridView1显示表 "lgh "中的列Topic、Author、TopicTime,而不显示Forum_Id。不知该怎么办?
2、我在GridView1中添加一列Button。想在Button的单击事件处理过程中获取Forum_Id的值,不知该怎么办?请高手指教,谢谢!!!
------解决方案--------------------http://pub.bbs.xunlei.com/fcg-bin/post.fcg?club=.NET&id=21
------解决方案--------------------1)可以gv.Columns[0].Visiable = false; //formID在第一行的话
2)GridView的AutoColumnGenerate要设为false
------解决方案--------------------1、设置个隐藏列绑定Forum_Id
2、设置Button的commandname= "tijiao "
if(e.commandname= "tijiao ")
{
//在这里把Forum_Id取出来
}
------解决方案--------------------可以通过事件对象的获得row index 再去拿column[0]里的值
------解决方案--------------------这样试下
1、
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
e.Row.Cells[1].Visible = false; //这里1为该列的索引
}
2、
要取该隐藏列的值
Response.Write(GridView1.Rows[0].Cells[1].Text); //这里Cells[1]中的1同样为该列的索引,Rows的索引就根据Button所在行来得到了
------解决方案--------------------1、去掉gridview的自动生成列功能。
设置每行的绑定对象
2、设置GridView的DataKeys. 绑定Forum_Id(int),在点击按钮的同时提取 该keys
当然 最好设置 button
------解决方案--------------------路过!!!!
你设置AutoColumnGenerate=false,如果你不想的话.可以在数据库里面设置:如:
select form_id as Topic,.........
from 表