【发布时间】:2013-08-30 16:41:05
【问题描述】:
我有一个场景,我有 3 个表(Employees、Tasks、EmployeeTaskTimes)我需要在 C# 中生成一个网格视图,其中包含垂直比例(行)上的 Task 列表和 @987654325 @ 在水平刻度(列)上并填写来自EmployeeTaskTimes 的值。
表格的基本布局是:
员工: 身份证; 姓名;
任务: 任务 标题;
员工任务时间: IdEmpTaskTime; 任务 身份证; 时间;
我遇到了三个令人头疼的问题,需要建议:
- 根据来自
Employees的数据集创建列。 (动态?) - 一个合理的查询来生成 gridview 使用的数据集
- 将值绑定到网格。
欢迎提出任何建议
【问题讨论】:
-
您可以使用 SqlConnection、SqlCommand、SqlDataAdapter 类将表从数据库中拉入内存,并使用 BindingSource 类在 GridView 的 DataSource 和数据库表之间绑定数据。如果您将 GridView 的 DataSource 设置为 BindingSource,列应该会自动从您的表中生成,如果这是您想要的。
-
我不明白为什么需要动态创建列?您已经知道表格的内容。另一件事,在我看来,您并没有真正进行任何研究。你不能指望我们就那样给你你需要的代码。您必须 1) 给我们一些代码示例,2) 向我们表明您已经进行了一些研究,但没有将您的答案直接发布到 StackOverFlow,最后向我们展示您尝试了什么以及什么不起作用。
-
所以,我做了很多gridview 的尝试。即:
-
'
'用代码说:'gvTasks.DataSource = Datatable.get()....'gvTasks.Databind(); -
我不是特别喜欢 Guigui 关于“告诉我们你已经做了一些研究”的评论。我一直在尝试找到一种无需编写数千行代码的简单方法。这 3 个表的内容各不相同(即一次您有 5 名员工,下一次有 7 名员工)。修复列没有帮助。如何在网格视图中表示?通常我会在 aspx.xml 中定义列。但这在这里行不通?