想了解此篇文章,建议先预习一下《动态变更GridView控件列名http://www.cnblogs.com/insus/p/3232057.html,因为多少有些关联。不管怎样,它能够实现了改变GridView的列标题。但是多少有些不足,我们从那一篇中,还是无法懂得怎样动态绑定数据行,因为面对动态实现呈现的控件,不想写太多html markup。
好吧,Insus.NET就分享一下自己的方法。以下面这篇为例:《如何实现数据行转换列显示http://www.cnblogs.com/insus/p/3300818.html 到了最后,还是

如果,我们添加一个属性AutoGenerateColumns="false"的话。我们不得不手动呈列需要显示的数据列。由于上例中,所有列均是动态获取。手动去绑定是不可能的。 似乎有点矛盾。因此Insus.NET有写此篇文章的念头。

说实在的,Insus.NET为了实现这个功能,刚开始也走了一些弯路,就是想先动态加载GridVeiw的标题,加载完毕,再想动态加载数据行。可是在实现动态加载数据时,还是被卡住了,行不通。最终还是放弃此想法,改而参考这个《动态为GridView控件创建列http://www.cnblogs.com/insus/archive/2011/06/10/2077538.html 动态创建GridView列。一列呈现完毕,再呈现一列。纵横思想在此可见一斑。

下面我们来创建一个列模版,它实现一个System.Web.UI.ITemplate接口。

现在我们就可以去GridView控件所在网页的.aspx.cs代中写程序了。我们需要做的,是需要从数据源中,获取所有列名:

准备好一切,我们可以在下面动态绑定Header和Template了:

在网页中override OnInit()方法,动态产生DynamicColumn自定义的模版列。并把每一个列名传入给DynamicColumn。

演示:

动态绑数据(GridView控件Header和ItemTemplate)的更多相关文章

  1. 动态绑数据(Repeater控件HeaderTemplate和ItemTemplate)

    前几天,Insus.NET有写了<动态绑数据(GridView控件Header和ItemTemplate)>http://www.cnblogs.com/insus/p/3303192.h ...

  2. 动态合并或定制GridView控件Header头某些列

    开发时,有时会对GridView控件头做一些字段合并.多行表头,多列合并,明白了其中的原理,实现起来,均能运用自如.下面Insus.NET分享自己的做法. 创建站点,创建aspx网页,拉GridVie ...

  3. 在aspx页动态加载ascx页面内容,给GridView控件绑定数据

    在aspx页动态加载ascx页面内容 //加载ascx页面内容Control c1 = this.Page.LoadControl("WebUserControl1.ascx"); ...

  4. 动态变更GridView控件列名

    近段时间,确是很多专案要写,客户的个性化要求也越来越多.举个例子吧,就是从数据库取出来的字段名,在显示在GridView时,需要全部更为另外一个名称.下面的样例,并非是专案的内容,而是Insus.NE ...

  5. ASP.NET中GridView控件删除数据的两种方法

      今天在用GridView控件时,发现了一个问题,就是使用GridView控件在删除数据时的问题.接下来我们通过模板列方式和CommandField方式删除某条数据讲解下两者之间的区别. 方式一:通 ...

  6. ASP.NET编辑与更新数据(非GridView控件实现)

    Insus.NET在实现<ASP.NET开发,从二层至三层,至面向对象 (5)>http://www.cnblogs.com/insus/p/3880606.html 中,没有把数据编辑与 ...

  7. Mouse点击之后,复制GridView控件的数据行

    本篇是实现用mouse点击GridView控件任意一行,把所点击的数据复制至另一个GridView控件上. 实现大概思路,把所点击的数据行的记录主键找出来,再去过滤数据源. 点击功能,已经实现,可以参 ...

  8. GridView控件

    GridView是ASP.NET 1.x的DataGrid控件的后继者.它提供了同样的基本功能集,同一时候添加�了大量扩展和改进.如前所述,DataGrid(ASP.NET 2.0仍然全然支持)是一个 ...

  9. 扩展GridView控件——为内容项添加拖放及分组功能

    引言 相信大家对GridView都不陌生,是非常有用的控件,用于平铺有序的显示多个内容项.打开任何WinRT应用或者是微软合作商的网站,都会在APP中发现GridView的使用.“Tiles”提供了一 ...

随机推荐

  1. Qt中int转换成QString

    (1) QString QString::number ( long n, int base = 10 ) [static] examle: long a = 48; QString s = QStr ...

  2. BZOJ4303:数列

    浅谈\(K-D\) \(Tree\):https://www.cnblogs.com/AKMer/p/10387266.html 题目传送门:https://lydsy.com/JudgeOnline ...

  3. 把ASM下的HDD VM转换成ARM下Managed Disk的SSD VM

    在ASM下,要把HDD的VM转换成SSD的VM步骤非常复杂.需要手工把Disk从普通存储账户复制到高级存储账户.再通过这个Disk创建VM. 目前在有了ASM到ARM的迁移工具,以及Managed D ...

  4. 一段小程序理解getchar和putchar

    #include "stdafx.h" #include <iostream> using namespace std; int main() { char c,d,e ...

  5. Celery-4.1 用户指南: Daemonization (系统守护进程)

    Generic init-scripts 查看Celery发布里的 extra/generic-init.d/ 文件夹. 这个文件夹中包含了celery worker 程序的通用bash初始化脚本,可 ...

  6. sass实用知识点

    本文总结sass相关核心知识点 说明:本文的内容是,我在开发实践中总结的实用性比较强的sass知识点,其他未涉及的知识,如果对你有作用请自行查阅 sass知识目录 嵌套 注释 SassScript @ ...

  7. CS231n 2016 通关 第三章-SVM与Softmax

    1===本节课对应视频内容的第三讲,对应PPT是Lecture3 2===本节课的收获 ===熟悉SVM及其多分类问题 ===熟悉softmax分类问题 ===了解优化思想 由上节课即KNN的分析步骤 ...

  8. python paramiko 调试

    #!/usr/bin/env python #-*- encoding:utf-8 -*- import paramiko transport = paramiko.Transport(('10.34 ...

  9. 封装 Toast

    一. ToastView.java 1 import android.content.Context; import android.view.LayoutInflater; import andro ...

  10. 在用mvn编译java文件时遇到问题

    问题一:找不到加载主类 为什么会出现这类加载失败的问题那??? 一看这个问题就是环境变量配置有问题,找到问题解决就ok了!!! 问题二:无法用mvn编译java文件 这个问题是由于pom.xml文件出 ...