如图所示,我有 SQL 数据库表。我希望Location_Instance列(即图像中的第二列)的值显示为GridView
. 现在我正在将列复制到 aListBox
并使用ListBox
要显示为标题。但我想直接从数据源显示。任何人都可以帮我解决这个问题。先感谢您。
4 回答
一种方法是编写一些额外的代码来创建一个新的 DataTable,其中列设置您想要的方式,然后从数据库中的数据插入您想要的行。
在 SQL 中执行此操作很困难。
有关如何执行此操作,请参阅http://msdn.microsoft.com/en-us/library/hfx3s9wd.aspx ...
您不能直接将列的值设置为网格视图中的标题,首先您必须将其保存在某个位置,例如 ViewState 或任何控件
编写选择查询并获取数据
喜欢
Select * from Tbl where 'Condition'
将数据填充到数据表中(例如:dt)。然后直接绑定数据到gridview。喜欢
Gridview.Datasource = dt; Gridview.Databind();
然后直接显示标题。
如果要显示Location_Type
为,Location Type
则必须像这样编写 SQL 查询
Select Location_Type as [Location Type] .... from Tbl where 'Condition'
逻辑上这是不可能的。因为在这种情况下,您希望在多列的单行中显示多行数据。所以如果你的位置实例增加你会怎么做?
但是,如果 location_instance 的数量是固定的,则可以解决。但这也是有限的。您可以将位置实例显示为网格视图行,而不是列。您可以设置该行的样式,使其看起来像标题。
要了解如何将列数据转换为行数据,请查看以下链接。 http://blog.sqlauthority.com/2008/06/07/sql-server-pivot-and-unpivot-table-examples/
因此,一旦您连续获取数据,您就可以使用网格视图轻松地将数据绑定到RowDataBound
网格视图。