我有一个学生数据库,以及基于他们的每周数字。我想创建一个gridview,其中包含一组动态扩展的列和行,其中行是1,2周,...,n和列代表每个学生,反之亦然。
Reviews data table looks like this:
======================================
| Stu# | Week# | Score | Review# |
--------------------------------------
| 123 | 1 | A+ | 832 |
| 123 | 2 | C- | 352 |
. . . . .
. . . . .
. . . . .
| 321 | 12 | B | 992 |
| 321 | 13 | A- | 935 |
======================================
基本上,我想提出
的评论在每个单元格中,我希望根据提交的评论提供每周数字,以及此评论的链接。很像:
_____________________________
| Week | StudentA | StudentB |
| No. | (123) | (321) |
-------------------------------
| 1 | A+ | B- |
| 2 | ... | ... |
. . . .
. . . .
. . . .
| 13 | A+ | B- |
-------------------------------
我已经看了几个(一百个)同样的问题,但试图将某些东西放在一起却不是同样的问题,但到目前为止已经被愚弄了。 它几乎就像是一个excel电子表格,其中包含指向特定数据条目的链接。
我开始创建一个列表,在列表中,但这变得太混乱了。 然后我尝试使用DataTable,其中列和行是在开始时创建的,但不知道DataBind()包含超链接的表(当然是以URLParamaters到aspx页面的形式)。
如果有人对这种设置有任何经验,我很乐意,如果你能帮我一把。
答案 0 :(得分:0)
好的,我已经开始动态生成DataTable并将其绑定到我的GridView,它对于纯文本结果非常好,但是我想为每个元素创建超链接(即A +)这样一个特定的标记可以阅读,评论等。
我尝试添加标签,但是由于ASP.net的代码注入保护,它并没有完全奏效。所以基本上我有:
HyperLink thisScore = new HyperLink();
thisScore.NavigateUrl=string.Format("<a href='studentMarks.aspx?groupID={0}&week={1}&studentID={2}'>{3}</a>", groupID, week, reader["student_ID"], reader[studentScoreLocation]);
newRow[studentName] = thisScore;
随后尝试使用HyperLink对象(无效)
HyperLink thisScore = new HyperLink();
thisScore.NavigateUrl=string.Format("studentMarks.aspx?groupID={0}&week={1}&studentID={2}", groupID, week, reader["student_ID"]);
thisScore.Text = reader[studentScoreLocation].ToString();
newRow[studentName] = thisScore;
解决这个问题的最佳方式是什么?