有关datagrid的简单问题,问题解决就给分

nayc 2005-06-30 11:38:22
问题如下:
有个datagrid 他有基本列和按钮列,比如有个查看详细信息列吧
当点击此按钮时, 怎么获取该行的某列值

动作 编号 姓名 性别
查看 001 刘四 男
…… …… …… ……

也就是 当点击查看时 显示该条记录的详细信息,在SQL语句中 我想用select * from 表 where user_id = 该条记录的编号值 但不知道怎么获取该字段的值
好象要用到datagrid的一些属性或方法,具体是什么?请贴下 谢谢
...全文
148 19 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
seekg 2005-07-01
  • 打赏
  • 举报
回复
e.Item.Cells[1].Text
Toti 2005-07-01
  • 打赏
  • 举报
回复
你可以在datagrid的第0行放你所要绑定表自增的ID
然后在你的Private Sub DataGrid1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DataGrid1.SelectedIndexChanged
事件中
int ID=System.Convert.ToInt32(e.Item.Cells[0].Text);
select * from 表 where user_id ="+ID+"; DataSet dsIU=new DataSet();
dsIU=Info.Select(strSql,"INTER_USER");
当你点查看时,事件中自动会取你点查看这行所对应表的自增ID
nayc 2005-07-01
  • 打赏
  • 举报
回复
to shilei831115(柔石) 你写的好象是C#的语法格式吧 不能用啊
nayc 2005-07-01
  • 打赏
  • 举报
回复
关键就是这个行 列 怎么确定啊???
nayc 2005-07-01
  • 打赏
  • 举报
回复
谢谢 大家 问题已解决 原来是列出问题了
马上给分
njqibin 2005-07-01
  • 打赏
  • 举报
回复
搂主以后问问题,最好把环境写清楚,比方说vb.net,webform,因为webform和winform的语法不太一样的。
都是菜鸟,互帮互助阿。
njqibin 2005-07-01
  • 打赏
  • 举报
回复
首先你得添加select列,就是botton column的select,然后点击select就可以触发
DataGrid1_SelectedIndexChanged事件了
DataGrid1.SelectedItem.Cells(n).Text就是你要的那行的n列的值。
再不明白就加我的msn qi_bin@hotmail.com,前几天我刚刚解决这个问题。vb.net的webform.
jiekewei 2005-07-01
  • 打赏
  • 举报
回复
你这样试试吧:
你将"查看"字段用 "选择"类型的列. (属性生成器-->列-->按钮列-->选择)
再在 DataGrid 的 SelectedIndexChanged 里添加代码.
如:(取选择行的某列值)
DataGrid 控件ID.SelectedItem.Cells[指定列索引].Text

这样应该能行 . ^_^
renyu732 2005-06-30
  • 打赏
  • 举报
回复
发送:
<asp:datagrid id="DataGrid1" style="Z-INDEX: 101; LEFT: 280px; POSITION: absolute; TOP: 224px" runat="server" AutoGenerateColumns="False" ShowHeader="False">
<Columns>
<asp:TemplateColumn headerText="点击显示详细信息">
<ItemTemplate>
<asp:HyperLink ID="NewsTitle1" Text='<%# Left(CType(DataBinder.Eval(Container.DataItem,"Title"),String),20)+"..."%>' NavigateUrl='<%# "newsDetail.aspx?id="+DataBinder.Eval(Container.DataItem,"id").ToString() %>' Target=_blank Runat=server />
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn>
<ItemTemplate>
<%# Ctype(DataBinder.Eval(Container.dataitem,"Time"),DateTime).ToShortDateString()%>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:datagrid>
renyu732 2005-06-30
  • 打赏
  • 举报
回复
很简单
我给你写.
nayc 2005-06-30
  • 打赏
  • 举报
回复
to AntingZ(夕惕若) 能给具体点么
行具体不知道是哪行啊 那是根据Private Sub DataGrid1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DataGrid1.SelectedIndexChanged
中的事件来确定的啊
等待中……
AntingZ 2005-06-30
  • 打赏
  • 举报
回复
?=DataGrid1.Item(行, 列)
shilei831115 2005-06-30
  • 打赏
  • 举报
回复
string str = DataGrid1.Items[你的行].Cells[你的列].Text;
pp918 2005-06-30
  • 打赏
  • 举报
回复
Dim str As String = Me.DataGrid1.Item(Me.DataGrid1.CurrentRowIndex, 1[列的索引])
nayc 2005-06-30
  • 打赏
  • 举报
回复
还没搞定啊,怎么获取该列的鼠标点击的那行 也就是说某条记录中的第一列的值
急!! 用它来做参数传递的啊
nayc 2005-06-30
  • 打赏
  • 举报
回复
还没搞定。。。 to:njqibin(杉树林)我的是WEBFORM
to:renyu732(在学.net中…)你的代码我有点看不明白,我刚接触.net 能注释下么
<asp:HyperLink ID="NewsTitle1" Text='<%# Left(CType(DataBinder.Eval(Container.DataItem,"Title"),String),20)+"..."%>' NavigateUrl='<%# "newsDetail.aspx?id="+DataBinder.Eval(Container.DataItem,"id").ToString() %>'
nayc 2005-06-30
  • 打赏
  • 举报
回复
恩 谢谢大家 我刚吃饭去了 ,我这就去试试
试完就给分!~!
njqibin 2005-06-30
  • 打赏
  • 举报
回复
不知道你是winform还是webform,我给你webform的吧,前两天我刚做的。
首先你的查看应当是select类型,也就是说在属性生成器里面是select的columns
DataGrid1.SelectedItem.Cells(1).Text 就是你选择的这一行的第二列的值
DataGrid1.SelectedItem.Cells(2).Text 就是你选择的这一行的第三列的值
renyu732 2005-06-30
  • 打赏
  • 举报
回复
接收:
Dim StrID As String
StrID = Request.Params("id")
Dim comm As New SqlDataAdapter("Select * from News Where ID=" & StrID, conn)

解决了吧?

哈哈...

给分吧...

16,721

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧