Using DataGrid(attitude of mine)
Author:香水坏坏 Date:04-12-30 凌晨
如有转载:请著名出处,TKS!
A、简介 DataGrid 位于System.Web.UI.WebControls名称空间下;在using此名称空间的时候,请确定 你是否在当前的项目的引用里 添加了System.Web.DLL 这个 assemble(程序集)
B、主题 这片文章里我将把我对DataGrid的一些初步认识与大家分享以及怎样在DataGrid的Colums binding CheckBoxList控件[以此类推,大家可以很轻松bind其他的WebControls]。
C、Some importants pionts 必须了解的事件: DataGrid.ItemDataBound:在数据bind后发生 几个类: DataGridItem: 表示一行数据,同时DataGrid.Items 就是DataGridItem的集合 TableCell:表示一个表格的单元格 DataGridItemEventArgs: 从EventArgs继承
D、实现 private void DataGrid1_ItemDataBound(object sender, DataGridItemEventArgs e) {
DataGridItem item = e.Item; //获取当前行的,即DataGridItem int id = int.Parse(item.Cells[0].Text); //获取相关查询的数据库的关键字,这里我把一个id存在第一列
CheckBoxList productsList; //申明一个CheckBoxList变量 productsList = new CheckBoxList(); //实例一个CheckBoxList对象 DataTable products = ProductAccessor.GetProducts( id ); //根据取的id查询数据库 for ( int i = 0 ; i < products.Rows.Count ; i++ ) { ListItem listItem = new ListItem(); //申明并实例一个ListItem listItem.Value = products.Rows[i][0].ToString(); listItem.Text = products.Rows[i][1].ToString(); if ( products.Rows[i][2].ToString() == "1" ) listItem.Selected = true; productsList.Items.Add( listItem ); //把ListItem 添加到 CheckBoxList中去 }
productsList.SelectedIndexChanged +=new EventHandler(productsList_SelectedIndexChanged); productsList.AutoPostBack = true;
item.Cells[1].Controls.Add( productsList ); //把CheckBoxList添加到当前行的 第二个单元格去
}
}
E 、 至此,我们已经完成了把CheckBoxList添加DataGrid的主要工作,看看我们的DataGrid是不是变的更人性化了呵呵!!! 嘎嘎,如果大家就这篇文章有什么疑问的话可以QQ25359952,I WILL VERY HAPPY TO HELP EVERYBOY。大家一起进步。

|