在网格视图中显示空行和填充行

本文关键字:填充 显示 网格 视图 | 更新日期: 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