现在的位置: 首页 > 综合 > 正文

DataGrid中DropDownList 的数据绑定

2013年10月20日 ⁄ 综合 ⁄ 共 1398字 ⁄ 字号 评论关闭

要在DataGrid中使用DropDownList 需要使用到

1。DataGrid的DataGrid_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)事件

ItemDataBoundz在项被数据绑定到DataGrid控件后发生

2。ListTypeItem枚举

指定列表控件中项的类型

成员名称 说明
AlternatingItem 交替(从零开始的偶数索引)单元格中的项。它是数据绑定的。
EditItem 列表控件中当前处于编辑模式的项。它是数据绑定的。
Footer 列表控件的页脚。它不是数据绑定的。
Header 列表控件的页眉。它不是数据绑定的。
Item 列表控件中的项。它是数据绑定的。
Pager 页导航,显示定位到与 DataGrid 控件关联的不同页的控件。它不是数据绑定的。
SelectedItem 列表控件中的选定项。它是数据绑定的。
Separator 列表控件中项之间的分隔符。它不是数据绑定的。

例子:

aspx页---只给出页中DataGrid部分

<asp:DataGrid id=“myDatagrid“ Runat="server">
<COLUMNS>
<asp:TemplateColumn HeaderText="事务">
<ITEMTEMPLATE>
<%# DataBinder.Eval(Container.DataItem,"事务") %>
</ITEMTEMPLATE>
<EDITITEMTEMPLATE>
<asp:DropDownList id=dropdown runat="server"></asp:DropDownList> //DropDownList在那种标签中决定数据绑定的ListTypeItem的选择
</EDITITEMTEMPLATE>

</asp:TemplateColumn>
</COLUMNS><BR></asp:DataGrid></P>

.CS文件

private void myDatagrid_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)

{

   if(e.Item.ItemType == ListItemType.EditItem)? //如果出现“未将对象引用设置到对象的实例”的错误,多半缺少这一判断或者是ListItemType选择错误。

{
    SqlConnection conn = new SqlConnection(“DataBase=Test;Uid=sa;Pwd;Server=(local)“);

    SqlDataAdapter da = new SqlDataAdapter(“select * from Users“,conn);

    DataSet ds = new DataSet();

   da.Fill(ds);

   DropDownList drop = (DropDownList)e.Item.FindControl(“dropdown“);

   drop.DataTextField = "ID";

   drop.DataValueField ="CusName";

   drop.DataSource = ds.Tables[0].DefaultView;

   drop.DataBind();

}

}

 

抱歉!评论已关闭.