DataGrid的模板列如何绑定DropDownList
帮看下,有问题吗,一打开dropDownList的选项就是空白的,而同行的,其它列已正确显示数据。
<asp:TemplateColumn HeaderStyle-HorizontalAlign="Center" HeaderText="交费方式">
<HeaderStyle HorizontalAlign="Center"></HeaderStyle>
<ItemTemplate>
<asp:DropDownList ID="manner" Width="80" DataTextField="mannerName" DataValueField="mannerID" Runat="server"></asp:DropDownList>
</ItemTemplate>
</asp:TemplateColumn>
private void dgMain_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e )
{
if(e.Item.ItemType==ListItemType.Item||e.Item.ItemType==ListItemType.AlternatingItem)
{
DropDownList mannerDLst=(DropDownList)dgMain.Items[6].FindControl("manner");
string SQLmanner;
SqlConnection htrlConn=classes.Base.getConn(Session["year"].ToString());
SQLmanner="select mannerID,mannerName from TB_Manner where mannerID in(3,4,6)";
SqlDataAdapter mannerCommand=new SqlDataAdapter(SQLmanner,htrlConn);
DataSet DS=new DataSet();
mannerCommand.Fill(DS);
mannerDLst.DataSource=DS.Tables[0].DefaultView;
mannerDLst.DataTextField="mannerName";
mannerDLst.DataValueField="mannerID";
mannerDLst.DataBind();
htrlConn.Close();
}
}
<asp:TemplateColumn HeaderStyle-HorizontalAlign="Center" HeaderText="交费方式">
<HeaderStyle HorizontalAlign="Center"></HeaderStyle>
<ItemTemplate>
<asp:DropDownList ID="manner" Width="80" DataTextField="mannerName" DataValueField="mannerID" Runat="server"></asp:DropDownList>
</ItemTemplate>
</asp:TemplateColumn>
private void dgMain_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e )
{
if(e.Item.ItemType==ListItemType.Item||e.Item.ItemType==ListItemType.AlternatingItem)
{
DropDownList mannerDLst=(DropDownList)dgMain.Items[6].FindControl("manner");
string SQLmanner;
SqlConnection htrlConn=classes.Base.getConn(Session["year"].ToString());
SQLmanner="select mannerID,mannerName from TB_Manner where mannerID in(3,4,6)";
SqlDataAdapter mannerCommand=new SqlDataAdapter(SQLmanner,htrlConn);
DataSet DS=new DataSet();
mannerCommand.Fill(DS);
mannerDLst.DataSource=DS.Tables[0].DefaultView;
mannerDLst.DataTextField="mannerName";
mannerDLst.DataValueField="mannerID";
mannerDLst.DataBind();
htrlConn.Close();
}
}
...全文
相关推荐
ASP.NET应用:DataGrid使用最佳实践
- **列类型**: - **绑定列**(BoundColumn):根据数据表中的列类型自动转化为字符串形式展示。 - **模板列**(TemplateColumn):允许自定义列的显示样式。
自定义DataGrid分页块完美实现
默认情况下,DataGrid会自动处理页码的计算和切换,但我们可以重写这些行为。要自定义分页块,可以使用模板列(TemplateColumn)来创建自定义的分页UI。
ASP.NET中访问DataGrid中所有控件值的方法
当DataGrid绑定数据源后,它会根据模板(如果有的话)来显示数据,或者在没有模板时默认使用绑定到的每个属性的ToString方法。
[视频]ASP.NET-DataGrid高级技巧
**自定义模板**:DataGrid允许开发者通过模板字段来自定义列的显示方式,包括使用HTML、服务器控件或用户控件,以实现复杂的布局和样式。2.
在线招聘系统
高级用法包括自定义模板列、分页、排序、过滤、行编辑和删除功能,以及通过AJAX实现的异步更新,提供更加动态和响应式的用户界面。5.


