asp.net2005:GridView 动态绑定列的一个问题

a130206 2010-07-29 05:44:42
抽象出来的问题:

1、有数据库表:
students表中字段:stuNum(学号),strName(姓名)
stuData表中字段:strName(姓名),address(住址) (假设没有重复的姓名)

2、gridview中已经绑定的列:
<asp:BoundField DataField="stuNum" HeaderText="学号">
</asp:BoundField>
要求:
向gridview中动态插入一列,标题为"姓名",其值为:根据本行的学号查询出的姓名,要求点击姓名后能够查

看到关于此人的住址信息。

求高手给出解决方案
...全文
289 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
寂静的神经 2010-07-30
  • 打赏
  • 举报
回复
假设 students表中存在字段 "score" 表示该生成绩,你要判断该生成绩,如果大于等于60分显示通过,小于60分显示未通过.
你可以在查询数据中用select case语句

SELECT id,name,title =
CASE
WHEN score>=60 THEN '通过'
ELSE '未通过'
END
from students

然后你绑定到gridview就可以了,点击超链接传值的话,就传ID,下页获取ID 再查再绑定就可以了。
Hemingway_Brian 2010-07-30
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 hell_boy7 的回复:]
添加模板列 放控件 添事件。。完毕
[/Quote]+1
a6711145 2010-07-30
  • 打赏
  • 举报
回复
1 LZ 會不會 把 2 個表 的資料 關聯 查詢 出來啊? 比如得到如下結果:
stuNum strName strName address
----------------------------------
... ... ... ...

2 LZ 會不會 把 1 的結果 顯示到 gridview 中?

3 <asp:BoundField ...></asp:BoundField>
那麼 LZ 知不知道:
<asp:TemplateField ...>
<ItemTemplate>...</ItemTemplate>
</asp:TemplateField>

4 Eval("xxx") ???

5 gridview 的事件 ??

6 如何操作 gridview 對象 內容,比如獲取某行某列值,gv內嵌控件?
a130206 2010-07-30
  • 打赏
  • 举报
回复
还是没有解决啊,继续求救中。。。。。。
a130206 2010-07-29
  • 打赏
  • 举报
回复
to wuyq11:
<%# Eval("字段").ToString().Equals("")?"<a href=\"a.aspx?id="+Eval("stuNum")+"\"/>":""%>
我如何体现“通过”与“不通过”字样呢?
wuyq11 2010-07-29
  • 打赏
  • 举报
回复
<%# Eval("字段").ToString().Equals("")?"<a href=\"a.aspx?id="+Eval("stuNum")+"\"/>":""%>
或通过ITemplate动态模板列
a130206 2010-07-29
  • 打赏
  • 举报
回复
我现在的实现是:
通过在后台动态生成一个HyperLinkField列,然后设置其HeaderText和DataNavigateUrlFields、DataNavigateUrlFormatString,但是显示是HyperLinkField的text值根据学号的不同会有不同,我不知道如何动态计算HyperLinkField的text值
a130206 2010-07-29
  • 打赏
  • 举报
回复
因为是抽象出来的问题,zengbingling提供的方案不能够解决问题

我想要的是:
通过学号根据一定条件进行判断,比如若大于100,则在动态生成的列的值为“通过”,否则动态生成的列的值为“不通过”,再则,我能够点击“通过”或者“不通过”,连接到另一页面,显示与此学号相关的一些信息

不知道,我描述的够不够清楚
a130206 2010-07-29
  • 打赏
  • 举报
回复
to hell_boy7
模板列我无法实现链接的功能啊
Ethan 2010-07-29
  • 打赏
  • 举报
回复
添加模板列 放控件 添事件。。完毕
zengbingling 2010-07-29
  • 打赏
  • 举报
回复
直接在数据层实现。
select * from students join stuData on students.strName=stuData.strName
现在直接绑定就可以了。
不过建议你两个表最好用学号关联

111,093

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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