继上一节实现MDataTable之后,我们再为MDataTable加上一个NewRow()方法,以便能构造出该表的新行
如下:
public MDataRow NewRow() { MDataRow mdr = new MDataRow(); mdr.TableName = _TableName; MDataCellStruct mdcStruct = null; for (int i = 0; i < this.Columns.Count; i++) { mdcStruct=this.Columns[i]; mdr.Add(new MDataCell(ref mdcStruct)); } return mdr; }
OK,接下来,我们新建一个Demo的web工程,在Default.aspx中随便拖一个GridView控件进去,然后在Page_Load里写下以下代码:
MDataTable table=new MDataTable("myTableName"); table.Columns.Add("A", SqlDbType.NVarChar); table.Columns.Add("B",SqlDbType.NVarChar); MDataRow mdr = table.NewRow(); mdr[0].Value = "helloA"; mdr[1].Value = "111111"; table.Add(mdr); GridView1.DataSource = table; GridView1.DataBind();
敲mdr["A"]本来是要这样敲的,不支持字符串索,只好敲了mdr[0]了,这里顺路为MDataRow加上一个字符串索引,如下:
public MDataCell this[string Key] { get { MDataCell dataCell = null; for (int i = 0; i < base.Count; i++) { if (base[i].ColumnName == Key) { dataCell = base[i]; break; } } return dataCell; } }
OK,就这样添加了两个列头,又添加了一行数据,运行后看结果如下:
TableNameConnectionStringCapacityCountmyTableName 42晕,数据根本不是我们想要的....
上面显示的列,有三个都是Table的属性,还有一个ConnectionString是Table的行的属性
吓,咋就混在一块了。。。。
于是,我们开始动手寻找绑定之法...
版权声明:本文原创发表于博客园,作者为路过秋天,原文链接:http://www.cnblogs.com/cyq1162/archive/2009/11/10/1599425.html
相关资源:jd_seckill京东抢茅台插件最新版【京东飞天茅台1499抢购】Python脚本的完整安装 使用教程