【发布时间】:2018-03-29 06:34:41
【问题描述】:
有一个有趣的问题,我很想提出一些想法。我有一个显示某个工作中心下的工作的 Gridview。 Gridview 可以像我们想要的那样很好地工作,但是在保存数据后,我们希望它通过 SQ # 绑定和重新排序。看起来很简单,但是第 1 列是来自 SQL 的值,其余列来自 AS400,因此不能只按顺序进行排序,因为它们是两个不同的服务器和两个不同的数据库,所以尝试这样做:
summGridView.Sort(summGridView.Columns[1], SortDirection.Ascending);
这将在 Windows 窗体中工作,但我在 Web 窗体中执行此操作。说无法从数据字段转换为字符串,因此尝试添加 ToString() 并给出以下错误:
索引超出范围。必须为非负数且小于集合的大小。
以下是我保存数据以按 SQ #.. 排序后想要的截图?
【问题讨论】:
-
在绑定到GridView之前需要对源数据进行排序。直接在 SQL 中,对 DataTable 进行排序或使用 Linq 对 List 进行 OrderBy。
-
你能拿一个 Gridview 并在 LINQ 中做一个排序吗?
-
不,它必须是源数据。
-
嗯。在我在 gridview 中执行 foreach 行之前,我不会添加该 SQ # 字段,这样我就可以使用 order # 从 SQL 获取该 SQ#,并使用 AS400 的 Oper Seq ... 这样就行不通了。
-
@VDWWD 我正在重做我的声明,然后在我的 gridview 上使用 foreach 将其更改为我的数据表行上的 foreach ......在我能够使用此 row.Cells[2 ].Text 从该行获取数据...但是我尝试 row.ItemArray[2].ToString() 从该行获取数据,但它不起作用。你知道怎么做吗?
标签: c# asp.net sorting gridview