ICANN认证国际域名顶级注册机构
网站建设,域名注册,空间租用,软件销售,广告设计 域名注册,空间租用, 网站建设,东莞网页设计,域名注册,网站推广,网站开发,网页设计 网站推广,,百度推广,新浪推广,雅虎推广,网易推广 标志设计,画册设计,包装设计,VI策划,企业形象顾问 连邦软件加盟店,提供销遥行,管家婆,速达,用友ERP,诺顿等软件报价及销售 建站必读 腾达网络,上网帮助中心, 腾达为东莞等地,提供网站建设,网站推广,广告设计,软件销售等优质服务!
建站必读


 
 
当前位置:首页 -> 建站必读 -> ASP技术
为DataGrid 写一个 DropDownListColumn
Net下有一个类DataGridColumn



作为 DataGrid 控件的不同列类型的基类。



有关此类型所有成员的列表,请参阅 DataGridColumn 成员。



System.Object

System.Web.UI.WebControls.DataGridColumn

System.Web.UI.WebControls.BoundColumn

System.Web.UI.WebControls.ButtonColumn

System.Web.UI.WebControls.EditCommandColumn

System.Web.UI.WebControls.HyperLinkColumn

System.Web.UI.WebControls.TemplateColumn



我们完成可以写一个继承DataGirdColumn的类,这样就成了。DropDownListColumn,CheckBoxListColumn等。







控件的代码如下。



using System;

using System.Web.UI;

using System.Web.UI.WebControls ;

using System.Collections ;

using System.Data ;





namespace CustomColumn

{

/// <summary>

/// DataGridCustomColumn 的摘要说明。

/// </summary>

public class DropDownListColumn :System.Web.UI.WebControls.DataGridColumn

{

//数据源

public DataTable DataSource ;

//显示的文本字段

public string DataTextField ;

//

public string DataValueField ;



//DataGrid中要绑定的字段



public string DataField ;





public string DataShowField;





public DropDownListColumn()

{

//

// TODO: 在此处添加构造函数逻辑

//





}



public override void InitializeCell(TableCell cell, int columnIndex, ListItemType itemType)

{

base.InitializeCell (cell, columnIndex, itemType);

switch(itemType)

{

case ListItemType.Header :

cell.Text = this.HeaderText ;

break;



case ListItemType.Item:case ListItemType.AlternatingItem :

cell.DataBinding +=new EventHandler(cell_ItemDataBinding);

break;



case ListItemType.EditItem :

cell.DataBinding +=new EventHandler(cell_EditItemDataBinding);

//========================

DropDownList drp = new DropDownList();

cell.Controls.Add(drp);

break;





}

}



private void cell_ItemDataBinding(object sender, EventArgs e)

{

TableCell cell =(TableCell)sender ;

DataGridItem DGI =(DataGridItem)cell.NamingContainer ;

try

{

cell.Text = (DataBinder.Eval(DGI.DataItem,DataShowField)).ToString();

}

catch

{

throw new Exception("请设置字段");

}

}



private void cell_EditItemDataBinding(object sender,EventArgs e)

{

TableCell cell =(TableCell)sender ;

DropDownList drp =(DropDownList)cell.Controls[0]; ;

ListItem item ;

DataGridItem DGI ;

try

{



//================

drp.Items.Add(new ListItem("请选择","-1"));

//



for(int k=0;k<=DataSource.Rows.Count -1;k++)

{

DataRow dr = DataSource.Rows[k];

item = new ListItem();

item.Text = dr[DataTextField].ToString();

item.Value = dr[DataValueField].ToString();

drp.Items.Add(item);

}







DGI =(DataGridItem)cell.NamingContainer ;



string Value = DataBinder.Eval(DGI.DataItem,DataField).ToString();



item = drp.Items.FindByValue(Value);

if(item!=null)

{

item.Selected = true;

}

}

catch

{

throw new Exception("数据源不对。");

}



}





}

}







Aspx页面调用。



先注册:



<%@ Register TagPrefix="DrpColumn" NameSpace="CustomColumn" Assembly="DropDownListColumn" %>



调用



<asp:DataGrid id="dgTeacher" runat="server" Width="100%" AutoGenerateColumns="False" AllowPaging="True"

CssClass="DataGrid" BorderColor="#333333" BorderStyle="
 
 
本站关键词:
|东莞产品目录设计|东莞产品推广策划|东莞VI设计|东莞企业形像设计|东莞产品包装设计|东莞海报设计|东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞|网页设计 东莞|东莞国际域名注册||东莞产品目录设计|东莞产品推广策划|东莞VI设计|东莞企业形像设计|东莞产品包装设计|东莞海报设计|东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞|网页设计 东莞|东莞国际域名注册||东莞产品目录设计|东莞产品推广策划|东莞VI设计|东莞企业形像设计|东莞产品包装设计|东莞海报设计|东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞|网页设计 东莞|东莞国际域名注册||东莞产品目录设计|东莞产品推广策划|东莞VI设计|东莞企业形像设计|东莞产品包装设计|东莞海报设计|东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞|网页设计 东莞|东莞国际域名注册||东莞产品目录设计|东莞产品推广策划|东莞VI设计|东莞企业形像设计|东莞产品包装设计|东莞海报设计|东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞|网页设计 东莞|东莞国际域名注册||东莞产品目录设计|东莞产品推广策划|东莞VI设计|东莞企业形像设计|东莞产品包装设计|东莞海报设计|东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞|网页设计 东莞|东莞国际域名注册||东莞产品目录设计|东莞产品推广策划|东莞VI设计|东莞企业形像设计|东莞产品包装设计|东莞海报设计|东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞|网页设计 东莞|东莞国际域名注册||东莞产品目录设计|东莞产品推广策划|东莞VI设计|东莞企业形像设计|东莞产品包装设计|东莞海报设计|东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞|网页设计 东莞|东莞国际域名注册||东莞产品目录设计|东莞产品推广策划|东莞VI设计|东莞企业形像设计|东莞产品包装设计|东莞海报设计|东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞|网页设计 东莞|东莞国际域名注册||东莞产品目录设计|东莞产品推广策划|东莞VI设计|东莞企业形像设计|东莞产品包装设计|东莞海报设计|东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞|网页设计 东莞|东莞国际域名注册||东莞产品目录设计|东莞产品推广策划|东莞VI设计|东莞企业形像设计|东莞产品包装设计|东莞海报设计|东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞|网页设计 东莞|东莞国际域名注册||东莞产品目录设计|东莞产品推广策划|东莞VI设计|东莞企业形像设计|东莞产品包装设计|东莞海报设计|东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞|网页设计 东莞|东莞国际域名注册||东莞产品目录设计|东莞产品推广策划|东莞VI设计|东莞企业形像设计|东莞产品包装设计|东莞海报设计|东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞|网页设计 东莞|东莞国际域名注册||东莞产品目录设计|东莞产品推广策划|东莞VI设计|东莞企业形像设计|东莞产品包装设计|东莞海报设计|东莞PHP主机|东莞动态空间|东莞动态网页|网站建设 东莞|网页设计 东莞|东莞国际域名注册|
域名注册 | 虚拟主机 | 网站建设 | 网站推广 | 广告设计 | 帮助中心 | 软件中心 | 关于腾达
东莞市腾达信息工程有限公司      本站网络实名: 东莞网站建设
地址:东莞市新城市中心区第一国际B座610   邮编:523007
电话:0769-22026071 22026072 传真:0769-22026076 24小时服务热线:13712032014
© 2002~2005 腾达网络   版权所有