0

每个人在他的项目中都非常使用网格视图控件,至少我是这样做的。

我给我的网格设置了一个漂亮的样式,我删除了边框和单元格间距等。

我还通过存储过程将它从我的数据库中绑定。我编写了分页方法和页面索引更改方法等。

现在我想将它打包在一个用户控件中,以便在任何项目或页面中使用此网格,因为在每个页面和每个项目中都进行所有这些是令人沮丧的。

但是当我把它放在用户控件中时,我无法从 html 中创建新的列和模板字段。

uc1:WebGrid  runat="server" ID="WebGrid" />
    <!-- i want to be able to do this -->
    <!-- 
        <columns>

        TODO

        </columns>
        -->

答案:

这个链接非常有用,除了它在 vb 代码中:(

4

1 回答 1

1

将网格视图放入用户控件将阻止<Columns>您在包含用户控件的标记中进行定义,因为无法通过用户控件的属性访问网格视图定义。

根据您希望在其他地方重用的更改的描述,在我看来,您最好创建一个可以应用于应用程序中所有网格视图的 CSS 类,而不是用户控件。

至于分页逻辑,如果分页逻辑足够通用,您可以将其放在应用程序中的所有网格视图都可以调用以进行分页的实用程序类中。

底线是您已经通过将网格视图的结构放入用户控件来锁定它,因为没有改变结构的机制。您可以尝试构建允许更改结构的属性,但这不会是<Columns>大多数人习惯的熟悉语法。

更新:

如果您想“扩展”网格视图,那么这是一个完全不同的故事,这就是公司喜欢Telerik做的,等等。他们可以使用网格视图的基本功能,然后提供增值。

查看这个先前的 StackOverflow 问题,了解有关扩展的详细信息GridView,然后将其作为控件公开,以便在应用程序的其他地方使用 -使用扩展 gridview 作为控件的类

于 2013-08-10T03:22:31.927 回答