注册 登录
编程论坛 ASP.NET技术论坛

[求助]如何通过gridview查看指定记录的详细信息?

cobby 发布于 2007-07-19 12:48, 1746 次点击
只有本站会员才能查看附件,请 登录

如图所示,我希望点击一个记录,就到另一个页面中打开那条记录的所有字段,怎么写代码呢?

另外,顺便问一下,如果数据库中字段很多,gridview显示比较紧的话,我想把字段输出到文本框或者标答中,这又该怎么办呢?

希望几位高手给点指点!谢了!
8 回复
#2
jyoseyi2007-07-19 12:55
详细信息有的是模版列把?点击的时候取得此行的主件值,然后把取得的值传出,在另外个页面获取这个值,根据这个再查出此行的内容
#3
cobby2007-07-19 13:07
我没有用模板列可以吗?之前好像实现过,不过没保存电脑死机后就一直想不起来了。。。郁闷。。。能告诉我具体怎么做吗?谢谢喽
#4
cobby2007-07-19 13:10
我是用buttonculoms的,代码里面添加了一个事件,
Protected Sub GridView1_RowCommand(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewCommandEventArgs) Handles GridView1.RowCommand
If e.CommandName <> "Page" Then
Response.Redirect("details.aspx?id='"+...)
End If
End Sub

现在不知道这个id怎么取值。
#5
来自北方的狼2007-07-19 13:16

DataKeyField
你那控件有这个东西吗?没用过GridView,估计差不多的东西吧。。有这个属性的话这个属性里面填主键的名字
事件里面你参考下这个:
private void DataGrid1_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{

if(e.CommandName=="LB")
{
string bianhao=DataGrid1.DataKeys[e.Item.ItemIndex].ToString();
this.Response.Redirect("WebForm2.aspx?bianhao="+bianhao);
}
}

#6
冰彩虹2007-07-19 16:46
<asp:HyperLinkField DataTextField="ContractNoSys" HeaderText="详细信息" DataNavigateUrlFields="ContractNoSys" DataNavigateUrlFormatString="ui_cm_sc_002.aspx?contractNo={0}"></asp:HyperLinkField>
假设ContractNoSys就是主键
#7
cobby2007-07-20 09:50
好像不行哎。。。datagrid可以有e.Item.Cells(0),可是gridview没有哎。。。能否帮忙再想想办法呀。。。55555555555555
#8
jyoseyi2007-07-20 10:16

几个楼上的不是说得差不多了嘛.你组合下他们的代码,自己在修改下就可以了
#9
cobby2007-07-20 10:22
嗯,知道了,多谢各位帮忙哦~~~
1