GridView自定义数据的绑定并显示
2012-03-01 03:31
260 查看
GridView是ASP.NET中非常方便好用的一个数据控件,一般的使用是直接用LinqDataSource或SqlDataSource进行数据绑定,然后在GridView中修改列的属性与样式,如果数据源固定只有一个GridView可以所见即所得地显示最后样式,但如果一个GridView绑定多个数据源的话就不那么容易。
此文示范如何自定义GridView的列样式,不使用***DataSource控件而直接将List<T>类型的数据绑定至GridView上,List<T>数据在代码层面可以更方便进行操作获取。
<T>数据类:
将数据绑定至GridView中:
如此,一个GridView可以绑定显示多个不同结构的List<T>数据源。
此文示范如何自定义GridView的列样式,不使用***DataSource控件而直接将List<T>类型的数据绑定至GridView上,List<T>数据在代码层面可以更方便进行操作获取。
<T>数据类:
/// <summary> /// 个人未报销明细 /// </summary> public class UnSubmitExpenseDetailData { public int Index { get; set; } public string UserName { get; set; } public DateTime Date { get; set; } public string Describe { get; set; } public decimal Count { get; set; } public static string KeyName_Index = "Index"; public static string KeyName_UserName = "UserName"; public static string KeyName_Date = "Date"; public static string KeyName_Describe = "Describe"; public static string KeyName_Count = "Count"; public UnSubmitExpenseDetailData(int index, string userName, DateTime date, string describe, decimal count) { this.Index = index; this.UserName = userName; this.Date = date; this.Describe = describe; this.Count = count; } }
将数据绑定至GridView中:
//获取数据,List<T>类型的数据集 this.GridView1.DataSource = (List<MyData>)GetMyData(); //允许分页 this.GridView1.AllowPaging = true; //清除列 this.GridView1.Columns.Clear(); //禁自动生成列 this.GridView1.AutoGenerateColumns = false; //生成新列 BoundField f1 = new BoundField(); f1.DataField = UnSubmitExpenseDetailData.KeyName_Index; f1.HeaderText = "序号"; f1.ItemStyle.HorizontalAlign = HorizontalAlign.Center; f1.ItemStyle.Width = 80; this.GridView1.Columns.Add(f1); BoundField f2 = new BoundField(); f2.DataField = UnSubmitExpenseDetailData.KeyName_UserName; f2.HeaderText = "用户名称"; f2.ItemStyle.HorizontalAlign = HorizontalAlign.Left; f2.ItemStyle.Width = 120; this.GridView1.Columns.Add(f2); BoundField f3 = new BoundField(); f3.DataField = UnSubmitExpenseDetailData.KeyName_Date; f3.HeaderText = "报销日期"; f3.ItemStyle.HorizontalAlign = HorizontalAlign.Center; f3.ItemStyle.Width = 100; f3.DataFormatString = "{0:yyyy-MM-dd}"; this.GridView1.Columns.Add(f3); BoundField f4 = new BoundField(); f4.DataField = UnSubmitExpenseDetailData.KeyName_Describe; f4.HeaderText = "用途"; f4.ItemStyle.HorizontalAlign = HorizontalAlign.Left; f4.ItemStyle.Width = 150; this.GridView1.Columns.Add(f4); BoundField f5 = new BoundField(); f5.DataField = UnSubmitExpenseDetailData.KeyName_Count; f5.HeaderText = "报销金额"; f5.ItemStyle.HorizontalAlign = HorizontalAlign.Right; f5.ItemStyle.Width = 100; f5.DataFormatString = "{0:C}"; this.GridView1.Columns.Add(f5); //数据绑定 this.GridView1.DataBind();
如此,一个GridView可以绑定显示多个不同结构的List<T>数据源。
相关文章推荐
- 对gridview绑定数据的操作方法及自定义显示内容
- 对gridview绑定数据的操作方法及自定义显示内容
- 对gridview绑定数据的操作方法,自定义显示内容
- 对gridview绑定数据的操作方法,自定义显示内容
- gridview 绑定数据为空时,表头部分内容显示的解决方法
- GridView自定义列数据绑定,和自定义颁功能
- 我的ASPxGridView控件的数据是在后台绑定的,但是实现不了筛选和分页的功能,只能显示一页的数据?
- 绑定GRIDVIEW时无数据显示表头方法
- 自定义DataList,GridView通过DataBinder.Eval方法绑定的数据
- GridView中绑定DropDownList并用DropDownList显示对应字段数据;
- ASPxGridview总结(ASPxGridView的增,删,改,查,数据绑定,外观显示,功能设定,分页)
- DevExpress中自定义CellTemplate数据绑定不显示的问题
- GridView数据绑定时数据源为空时显示表头和"没有记录"
- [Asp.Net]GridView绑定并且无数据时保持显示列头
- 如何让GridView控件在绑定的数据源没有数据时也显示标题
- GridView那点事之【如何使用DataView来绑定数据显示到表格中】
- asp.net GridView 后台绑定数据无数据显示表头及没有数据一行
- 数据绑定控件Repeater/GridView/DataList在前台显示正确的文本格式收藏
- GridView那点事之【如何使用ExecuteReader()来绑定数据显示到表格中】 .
- 数据绑定控件Repeater/GridView/DataList在前台显示正确的文本格式