c#Gridview动态增加新列求助

问题描述

用VS2010做一个c#的界面这是GridView已经做好的页面,但是不是动态绑定,还有要求修改成下面格式的页面,还要求动态绑定,小弟实在没辙了,请各路大神帮忙提供个思路~或者方法就行​

解决方案

解决方案二:
如何在GridView中动态添加模板列ICollectionCreateDataSource(){DataTabledt=newDataTable();//创建一个DataTable对象DataRowdr;//定义框架dt.Columns.Add(newDataColumn("id",typeof(Int32)));dt.Columns.Add(newDataColumn("text",typeof(string)));for(inti=0;i<6;i++)//循环遍历并添充DataTable内容{dr=dt.NewRow();dr[0]=i;dr[1]="列表"+i.ToString();dt.Rows.Add(dr);}DataViewdv=newDataView(dt);returndv;}publicclassGridViewTemplate:ITemplate//定义一个继承自ITemplate接口的类{privateDataControlRowTypedcrType;privatestringcolumnName;publicGridViewTemplate(DataControlRowTypetype,stringcolname){dcrType=type;columnName=colname;}publicvoidInstantiateIn(System.Web.UI.Controlcontainer){switch(dcrType){caseDataControlRowType.Header:Literalliteral=newLiteral();literal.Text=columnName;container.Controls.Add(literal);break;caseDataControlRowType.DataRow:DropDownListddl=newDropDownList();ddl.ID="dropdownlist";ddl.AppendDataBoundItems=true;ddl.Items.Add(newListItem("-----请选择------",""));ddl.Items.Add(newListItem("京广高速公路时刻表","98"));ddl.Items.Add(newListItem("京昆高速公路时刻表","368"));ddl.Items.Add(newListItem("京城高速公路时刻表","698"));container.Controls.Add(ddl);break;default:break;}}}protectedvoidButton1_Click(objectsender,EventArgse){for(intindex=1;index<GridView1.Columns.Count;index++){GridView1.Columns[index].Visible=false;}for(inti=0;i<Convert.ToInt32(DropDownList1.SelectedValue);i++){TemplateFieldtf=newTemplateField();tf.ShowHeader=true;tf.HeaderTemplate=newGridViewTemplate(DataControlRowType.Header,"动态添加列");tf.ItemTemplate=newGridViewTemplate(DataControlRowType.DataRow,"");GridView1.Columns.Add(tf);GridView1.DataSource=CreateDataSource();GridView1.DataBind();}}

时间: 2024-09-17 04:35:07

c#Gridview动态增加新列求助的相关文章

GridView 动态添加 数据列,绑定方法 (1/2)

gridview 动态添加 数据列,绑定方法 通过继承 gridview 并且重载  createcolumns() 添加自己想要的 column,根据扩展属性中的键值对生成column. 通过继承 bouldfield,并且重载 initializedatacell() 和 getvalue() 实现自己希望的绑定方法,实现可以基于方法的数据绑定,从而可以将扩展属性中的键值绑定到对应的cell中. gridview 是asp教程.net中表格数据显示控件中的一种,可以支持数据绑定,绑定的数据源

嵌套的DataGrid如何为子DataGrid动态增加模板列

datagrid|动态|模板 例子比较简单,直接贴代码了,例子达到以下功能: (1)两个DataGrid嵌套 (2)外面一个DataGrid分页 (3)里面一个DataGrid动态增加模板列  <%@ Page language="c#" Codebehind="WebForm45.aspx.cs" AutoEventWireup="false" Inherits="csdn2.WebForm45" %> <

JavaScript实现DIV层拖动及动态增加新层的方法

  本文实例讲述了JavaScript实现DIV层拖动及动态增加新层的方法.分享给大家供大家参考.具体分析如下: 无刷新添加一个新的DIV层,并可实现的该层的拖动,鼠标拖动层可移动位置,将JS部分另存为一个新文件,用到的时候从外部引入,这个拖动层代码很流行,GG和YAHOO等大网站经常可以看到这种效果. ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35

JavaScript实现DIV层拖动及动态增加新层的方法_javascript技巧

本文实例讲述了JavaScript实现DIV层拖动及动态增加新层的方法.分享给大家供大家参考.具体分析如下: 无刷新添加一个新的DIV层,并可实现的该层的拖动,鼠标拖动层可移动位置,将JS部分另存为一个新文件,用到的时候从外部引入,这个拖动层代码很流行,GG和YAHOO等大网站经常可以看到这种效果. <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=

如何给已经有数据的DataTable动态增加一列并赋值

以前手写sql的时代,我们经常用DataTable,自从用Linq后,很少用DataTable这些原始的东东了,近日在开发中遇到一些特殊情况,用户要求临时在显示数据上增加一列(该列是根据业务逻辑动态计算得来的一个数字),想了下,还是直接用DataTable来得方便(当然用List<T>,自己构造T类型也能解决,不过考虑这些需求只是一些临时性的,单独为这些临时性的要求写一个自定义类未免太麻烦)   代码不复杂,贴在这里主要是为了留个备份,以后忘了的时候,好方便查找:   CodeDataTabl

怎样在c#中调用MapX控件?修改*.tab文件的表结构,给tab文件增加新列并保存到数据库??

问题描述 请教怎么在.NET中动态读取*.tab文件(通过MapX),修改tab文件的表结构.1,给tab文件增加一个列?2,删除一个列?3,修改列名?4,修改列的类型?5,怎样删除tab文件里的记录像:deletefromtable_testwhereid=333 6.怎样更新tab文件的记录像:updatetable_testsetid=333wherename='张三' 本人第一次接触到MapX,也不懂MapInfo,希望熟悉MapX二次开发的朋友指点!由于任务时间较紧,所以希望热心的朋友

关于gridview动态添加模版列分页后模版列中控件消失的问题

问题描述 我动态添加了GridView中的所有列,包括一个checkbox模版列可是,分页后,模版列的控件消失了,请问这个问题如何解决,已经弄了一天了. 解决方案 解决方案二:为什么没人回答啊?这个问题很简单吗?解决方案三:我再顶起!我再顶起!

gridview动态生成列,动态添加控件问题

问题描述 在GRIDVEIW的行绑定ROWDATABOUND里生成了N个列,并且往行里的某些单元格里加了DROPDOWNLIST,显示都没问题,但是我一点页面的按钮,本想通过循环GRIDVIEW,找到每一行里的DROPDWNLIST,可是结果是不能找到.而且动态生成的列也没有了.我又把代码放在ROWCREADER事件里创建列,及为列的单元格里增加DROPDOWNLIST,在执行调试时发现原先在页面上的列里放的HIDDEN控件也找不到,后来通过e.Row.DataItem可以取到我我存在HIDDE

excel-EXCEL如何实现动态筛选不重复记录复制到新列中

问题描述 EXCEL如何实现动态筛选不重复记录复制到新列中 EXCEL如何实现动态筛选不重复记录复制到新列中求一函数公式:工作表中有几千条记录,希望从中查找中不重复的记录复制到新列中,即无论某一记录有一条或多条(当在"现状"列中加两笔相同的F,"结果"列中则只Show出一个F,A.B.C.D.F),我只需要一条.如:现状 结果A AA BB CC DCCD 解决方案 Topc008的这段VBA绑定的是第一列改变这个事件,所以在你的第一列单元格有改变的时候才触发.你在