在网格视图中显示空行和填充行
本文关键字:填充 显示 网格 视图 | 更新日期: 2023-09-27 18:12:50
我试图在gridview中显示4行。如果我在数据库中有2行,我应该显示2填充行和2空,如果我在数据库中有4,显示4填充行,如果我在数据库中没有,显示4空行。这怎么可能呢?
我使用SQl Server 2005使用c#, Asp.Net。我想使用一个存储过程,从数据库使用数据集,然后绑定到gridview的结果。
我想知道逻辑,所以我可以尝试为自己写代码。希望我清楚,我希望我所要求的是可能的?!
谢谢!
我要做的是使用gridview类的CreateRow()方法,如
gridView1.CreateRow(int rowIndex,
int dataSourceIndex,
DataControlRowType rowType,
DataControlRowState rowState);
因此,使用标准for
循环创建其中的四个,然后将所需的行附加到gridview中的相对行。比如gridview。Row[i] = SelectedDataBaseRow或其他东西,它将是沿着
gridView1.SelectRow(i) = dataTable1.Row[i].ItemArray[columnindex].ToString();
在存储过程中,只需创建某种左连接或右连接,通过与公共列进行匹配来生成空行。例如,考虑如下:
DECLARE @table AS TABLE
(
one VARCHAR(20) ,
two VARCHAR(30) ,
some_key INT
)
INSERT INTO @table
( one, two, some_key )
VALUES ( 'a', 'b', 1 )
SELECT t.one ,
t.two ,
t.some_key
FROM @table t
RIGHT JOIN ( SELECT 1 AS id
UNION
SELECT 2
UNION
SELECT 3
UNION
SELECT 4 AS id
) x ON x.id = t.some_key
将产生
one two some_key
a b 1
NULL NULL NULL
NULL NULL NULL
NULL NULL NULL
你可以将结果集绑定到gridview