asp.net aspxgridview 绑定数据
.Net中还提供ObjectDataSource,可以代替SqlDataSource里提供数据。而ObjectDataSource可以和业务逻辑层相连。
具体操作如下:
Default.aspx
2
3 <%@ Register Assembly="DevExpress.Web.v9.3, Version=9.3.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a"
4 Namespace="DevExpress.Web.ASPxPopupControl" TagPrefix="dx" %>
5
6 <%@ Register Assembly="DevExpress.Web.ASPxGridView.v9.3, Version=9.3.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a"
7 Namespace="DevExpress.Web.ASPxGridView" TagPrefix="dx" %>
8
9 <%@ Register Assembly="DevExpress.Web.ASPxEditors.v9.3, Version=9.3.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a"
10 Namespace="DevExpress.Web.ASPxEditors" TagPrefix="dx" %>
11
12 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
13
14 <html xmlns="http://www.w3.org/1999/xhtml" >
15 <head runat="server">
16 <title></title>
17 </head>
18 <body>
19
20 <form id="form1" runat="server">
21 <div>
22
23 <dx:ASPxGridView ID="masterGridView" runat="server">
24 <Templates>
25 <DetailRow>
26 <%--detail表格要指定它的DataSourceID为对应的ObjectDataSource --%>
27 <dx:ASPxGridView ID="detailGridView" runat="server" AutoGenerateColumns="False"
28 DataSourceID="CarDataSource"
29 onbeforeperformdataselect="detailGridView_BeforePerformDataSelect">
30 <Columns>
31 <dx:GridViewDataTextColumn FieldName="Id" VisibleIndex="0">
32 </dx:GridViewDataTextColumn>
33 <dx:GridViewDataTextColumn FieldName="CarName" VisibleIndex="1">
34 </dx:GridViewDataTextColumn>
35 </Columns>
36 <%-- detail表格的这个属性要设置为true --%>
37 <SettingsDetail IsDetailGrid= "true" />
38 </dx:ASPxGridView>
39 </DetailRow>
40 </Templates>
41 <%-- master表格的这个属性要设置为true才能显示出detail表 --%>
42 <SettingsDetail ShowDetailRow="true" />
43 </dx:ASPxGridView>
44 </div>
45 <%-- ObjectDataSource的配置属性,指定了SELECT方法为GetMyCar函数, --%>
46 <asp:ObjectDataSource ID="CarDataSource" runat="server"
47 SelectMethod="GetMyCar" TypeName="webtst.Car">
48 <SelectParameters>
49 <%-- 设置了一个Session["ID"]来源地参数id --%>
50 <asp:SessionParameter Name="id" SessionField="ID" Type="Int32" />
51 </SelectParameters>
52 </asp:ObjectDataSource>
53 </form>
54 </body>
55 </html>
56
Default.aspx.cs
2 using System.Collections.Generic;
3 using System.Data;
4 using System.Web;
5 using System.Web.UI;
6 using System.Web.UI.WebControls;
7 using DevExpress.Web.ASPxGridView;
8 namespace webtst
9 {
10 public partial class _Default : System.Web.UI.Page
11 {
12 protected void Page_Load(object sender, EventArgs e)
13 {
14
15 masterGridView.DataSource = GetDriver();
16 masterGridView.KeyFieldName = "Id";
17 masterGridView.DataBind();
18 }
19 //后台查询接口,返回主表数据
20 public List<Driver> GetDriver()
21 {
22 List<Driver> drivers = new List<Driver>();
23 drivers.Add(new Driver(0, "Li", "Beijing"));
24 drivers.Add(new Driver(1, "Wang", "Beijing"));
25 drivers.Add(new Driver(2, "Zhang", "Beijing"));
26 drivers.Add(new Driver(3, "Zhao", "Beijing"));
27 drivers.Add(new Driver(4, "Qian", "Beijing"));
28 return drivers;
29 }
30
31 protected void detailGridView_BeforePerformDataSelect(object sender, EventArgs e)
32 {
33 //降主表的主键写入Session,以便于ObjectDataSource在SELECT时调用
34 Session["ID"] = (sender as ASPxGridView).GetMasterRowKeyValue();
35 }
36
37 }
38 //Master类
39 public class Driver
40 {
41 private int _Id;
42 public int Id
43 {
44 get { return _Id; }
45 set { _Id = value; }
46 }
47 private string _Name;
48 public string Name
49 {
50 get { return _Name; }
51 set { _Name = value; }
52 }
53 private string _Addr;
54 public string Addr
55 {
56 get { return _Addr; }
57 set { _Addr = value; }
58 }
59 public Driver(int id, string name, string addr)
60 {
61 Id = id;
62 Name = name;
63 Addr = addr;
64 }
65
66 }
67 //Detail类
68 public class Car
69 {
70 private int _Id;
71 public int Id
72 {
73 get { return _Id; }
74 set { _Id = value; }
75 }
76 private string _CarName;
77 public string CarName
78 {
79 get { return _CarName; }
80 set { _CarName = value; }
81 }
82 public Car(int id, string carname)
83 {
84 Id = id;
85 CarName = carname;
86 }
87 //静态查询函数,对应ObjectDataSource中的SelectMethod,参数对应从主表中传入的Key
88 //在ObjectDataSource根据这个参数自动产生,然后只要指定参数来源于Session中的ID即可
89 public static List<Car> GetMyCar(int id)
90 {
91 //随机产生一个子表的返回数据,此处可以替换成调用其他BLL接口
92 List<Car> cars = new List<Car>();
93
94 cars.Add(new Car(id, "Car" + (id * 10 + 1).ToString()));
95 cars.Add(new Car(id, "Car" + (id * 10 + 2).ToString()));
96 cars.Add(new Car(id, "Car" + (id * 10 + 3).ToString()));
97 cars.Add(new Car(id, "Car" + (id * 10 + 4).ToString()));
98 return cars;
99 }
100
101 }
102 }
103
群212099235
asp.net aspxgridview 绑定数据相关推荐
- ASP.NET dropdownlist绑定数据却显示System.Data.DataRowView
问题: 在VS中用dropdownlist控件绑定数据,浏览时却在控件里显示System.Data.DataRowView,而不是要显示的数据,代码如下: public static DataSet ...
- asp.net checkboxlist绑定数据读取出来
1.把数据绑定到CheckBoxList中 protected void Page_Load(object sender, EventArgs e) {if (!Page.IsPostBack){Sq ...
- asp.net页面绑定数据的方式-----未完待续
**方式一 **方式二 转载于:https://www.cnblogs.com/wgx0428/archive/2012/05/10/2493953.html
- ASP.ENT前台更改绑定数据的日期格式
1.Eval和Bind的区别 绑定表达式 < %# Eval("字段名") %> < %# Bind("字段名") %> 区别 1.ev ...
- Scott Mitchell 的ASP.NET 2.0数据教程之十一: 基于数据的自定义格式化
介绍 我们可以通过控制HeaderStyle, RowStyle, AlternatingRowStyle和其他一些属性来改变GridView, DetailsView, 和 FormView的样式, ...
- jquery配合.NET实现点击指定绑定数据并且能够一键下载
原文链接 http://www.jb51.net/article/95983.htm 大体思路: 1.jquery得到选中的绑定数据的id,将这个id赋值到数组中,最后将这个数组的值赋值给页面中创建的 ...
- Scott Mitchell 的ASP.NET 2.0数据教程之二十一:: 实现开放式并发
在ASP.NET 2.0中操作数据:实现开放式并发 下载本教程中的编码例子 | 下载本教程的PDF版 导言 对于那些仅仅允许用户查看数据,或者仅有一个用户可以修改数据的web应用软件,不存在多用户并发 ...
- Scott Mitchell 的ASP.NET 2.0数据教程之三十八:: 处理BLL和DAL的异常
原文 | 下载本教程中的编码例子 | 下载本教程的PDF版 导言 在 综叙:在DataList里编辑和删除数据 里,我们创建了一个提供简单编辑和删除功能的DataList.虽然功能上已经完整了,但是对 ...
- ListBox和ComboBox绑定数据简单例子
1. 将集合数据绑定到ListBox和ComboBox控件,界面上显示某个属性的内容 //自定义了Person类(有Name,Age,Heigth等属性) List<Person> per ...
最新文章
- [泰然翻译] cocos2d programming guide翻译(10)
- 019_Vue子组件向父组件传值
- 使用STM32和freeRTOS实现《贪吃蛇》
- 6.微服务:从设计到部署 --- 选择部署策略
- 畅谈无线通信系统物理层之系统概述
- 局域网计算机维护工具,局域网共享工具,教您局域网共享工具
- Python练习小工具——根据Exif的拍摄时间和设备名批量重命名照片
- PMP第十一节:项目风险管理
- Aliyun 阿里云 机器翻译调用 详解
- java线程中yield()和join()的区别
- 防止信息泄露的新方法
- html导航页面转换,纯CSS实现导航栏Tab切换效果
- Mysql之st_distance_sphere计算两坐标点距离
- 加密芯片ATSHA204之使用
- oracle转trs,TRS数据库数据的导入导出2.doc
- 超实用Excel快捷键,让你办公提速百倍
- X-Pool:多伦多大学提出基于文本的视频聚合方式,在视频文本检索上达到SOTA性能!(CVPR 2022)...
- 教育培训机构数字化指标-续班率
- Photoshop-滤镜库的详细使用方法
- MVC设计模式及其工作原理