
DataRowView rv = (DataRowView)e.Item.DataItem
rv["字段名"]就可以了
说起,相信很多学习.net的朋友并不会陌生。本文将由达内的讲师详细为您介绍关于的相关常识。 AspxGridView与GridView控件一样,都是 *** 作大数据量的列表数据的控件。那么我们如何像GridView控件一样,为AspxGridView控件添加一个序号列呢?就像下图一样: 有了序号列,用户可以快速定位自己想要的数据,对用户的体验度可加分不少哦。 一,首先为AspxGridView添加序号列 /// <summary>/// 为AspxGridView添加序号列,附件数量列
/// </summary>
/// <param name="_grid"></param>
public void SetGridAddNumberCol(AspxGridView _grid){if (_grid != null){if (_grid.Columns["序号"] == null){GridViewDataTextColumn col = new GridViewDataTextColumn()
col.HeaderStyle.HorizontalAlign = HorizontalAlign.Center
col.CellStyle.HorizontalAlign = HorizontalAlign.Center
col.EditFormSettings.Visible = DevExpress.Web.ASPxClasses.DefaultBoolean.False
col.Caption = "序号"
col.VisibleIndex = 0
_grid.Columns.Add(col)//这里主要是用来设置序号列的显示顺序,我们总是希望序号列显示在列表的最前面吧,但如果前面还有一个选择列的话,序号列就应该位于选择列的后面,也就是第二列。当然了,这段代码是可以根据情况来修改或者可以完全删除掉的。
bool isvisible
if (_grid.Columns[0].GetType().Name != "GridViewCommandColumn"){for (int i = 0i <_grid.Columns.Counti++){if (_grid.Columns[i].Caption == "序号")
_grid.Columns[i].VisibleIndex = 0else{isvisible = _grid.Columns[i].Visible
_grid.Columns[i].VisibleIndex = _grid.Columns[i].VisibleIndex + 1
_grid.Columns[i].Visible = isvisible}}}}} 二,添加后序后,还需要为该列赋值,当然了,这个就相当的简单了,我们只需要在AspxGridView的Grid_HtmlDataCellPrepared事件中为"序号"这个栏位赋值就好了,代码如下: protected void Grid_HtmlDataCellPrepared(object sender, AspxGridViewTableDataCellEventArgs e){if (IsCreateNumberCol &&e.DataColumn.Caption == "序号"){
e.Cell.Text = (e.VisibleIndex + 1).ToString()}} 如果你的数据源有使用了分页存储过程,而又想使用翻页后的序号是连续的,你可以改写填充序号的代码如下: protected void Grid_HtmlDataCellPrepared(object sender, AspxGridViewTableDataCellEventArgs e){if (IsCreateNumberCol &&e.DataColumn.Caption == "序号"){
e.Cell.Text = (e.VisibleIndex +(AspxGridViewID.PageIndex * AspxGridViewID.SettingsPager.PageSize) + 1).ToString()}} 注意:使用这个方法添加上的序号值,在使用DevExpress导出控件导出数据的时候是导不出来的。如果要想导出序号值,只有数据源中包含序号值才行。 现在,相信朋友们对于了解的更加清楚了,达内培训作为IT培训的领导品牌,为互联网行业培养了无数精英。
在表中列和行的添加和删除本节主要介绍DataColumn对象和DataRow对象,通过它们来说明在表中列与行的添加和删除。它们均不能单独存在,而是作为DataTable集合的两个元素存在。下面通过代码进行说明。
DataTable dt = new DataTable("t1")DataColumn dc = new DataColumn()dc.DataType = System.Type.GetType("System.String")dc.ColumnName = "Name"dt.Columns.Add(dc)DataRow drdr= dt.NewRow()dr["Name"] = "weiyi"dt.Rows.Add(dr)dr = dt.NewRow()dr["Name"] = "lirong"dt.Rows.Add(dr)dt.Rows.RemoveAt(0)dt.Columns.RemoveAt(0)
以上代码主要实现为创建完毕的DataTable添加一个“Name”列,并为该列的前两行分别添加元素。
代码解释如下所述。
首先是创建DataTable对象。
DataTable dt = new DataTable("t1")
然后创建DataColumn对象,并设置列名和列的类型,接着将列添加到DataTable中,如下所示。
DataColumn dc = new DataColumn()//创建列对象dc.DataType = System.Type.GetType("System.String") //设置列的类型dc.ColumnName = "Name" //设置列名 dt.Columns.Add(dc) //将列添加到DataTable中
创建完列后,应该为列进行赋值,这时需要用到DataRow对象,如下所示。
DataRow dr = dt.NewRow()
这里NewRow()表示表的新行,然后分别添加了两个行元素,最后还应该将新添加的行添加到DataTable中,如下所示。
dr["Name"] = "weiyi"dt.Rows.Add(dr)dr = dt.NewRow()dr["Name"] = "lirong"dt.Rows.Add(dr)
行与列的删除和DataTable一样,同样支持三种方法,如下所示。
dt.Rows.Clear()//删除所有行dt.Rows.RemoveAt(0) //删除第一行 dt.Rows.Remove(row)//删除指定行dt.Columns.Clear() //删除所有列 dt.Columns.RemoveAt(0) //删除第一列dt.Columns.Remove(column) //删除指定列
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)