在后台已经处理好 this.DataList1.DataSource = dt;
this.DataList1.DataBind();
在前台
asp:Label
ID="Label5" runat="server" Text='<%# Eval("题目") %>'></asp:Label>
这是绑定一个数据
可是我RadioButtonList要绑定四个数据asp:RadioButtonList ID="RadioButtonList2" runat="server" RepeatDirection="Horizontal" >
</asp:RadioButtonList><br />要如何写绑定???
this.DataList1.DataBind();
在前台
asp:Label
ID="Label5" runat="server" Text='<%# Eval("题目") %>'></asp:Label>
这是绑定一个数据
可是我RadioButtonList要绑定四个数据asp:RadioButtonList ID="RadioButtonList2" runat="server" RepeatDirection="Horizontal" >
</asp:RadioButtonList><br />要如何写绑定???
解决方案 »
- asp.net 有没有一种日历控件平常是微型图标的,点击的时候放大的
- 帮帮忙~
- 在asp.net的项目开发中,一个网页因为不同的客户端浏览器的分辨率而引发的问题
- 关于asp:RadioButton的问题,请帮忙
- 征集自定义身份验证安全解决方案!!!!
- 看看怎么实现这样的效果,最好能把主要代码贴出来(http://www.ppg.cn/YesPPG_CN/Products/NewProductDetail.aspx?ProductGroupID=613&ProductCode=031251204)
- {MDaemon6}如何用发邮件方式修改密码
- 如何读DataList1的字段?
- GRIDVIEW三层表头的排序问题
- 关于regex
- 诡异事件!!. page_load...........
- 100分散:高手来下,想做个网页即使通讯的程序,数据库怎么来最佳设置
错误:仅对具有 DataBinding 事件的对象提供数据绑定表达式支持。System.Web.UI.WebControls.ListItem 没有 DataBinding 事件。
前台<asp:datalist id="dlOption" runat="server">
<ItemTemplate>
<TABLE id="Table2" cellSpacing="1" cellPadding="1" width="300" border="1">
<TR>
<TD>
<asp:Label id=lbAsk runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"examAsk") %>'>
</asp:Label></TD>
</TR>
<TR>
<TD>
<asp:RadioButtonList id=rblOption runat="server" DataSource='<%# rdlDataBind(DataBinder.Eval(Container.DataItem,"examOption").ToString()) %>'>
</asp:RadioButtonList></TD>
</TR>
</TABLE>
</ItemTemplate>
</asp:datalist>后台private void dlOption_ItemDataBound(object sender, System.Web.UI.WebControls.DataListItemEventArgs e)
{
if(e.Item.ItemType==ListItemType.Item||e.Item.ItemType==ListItemType.AlternatingItem||e.Item.ItemType==ListItemType.EditItem)
{
RadioButtonList rbt=(RadioButtonList)e.Item.FindControl("rblOption");
这里写绑定代码
}
}
把它转换成集合类型的数据再绑定RadioButtonList2
<asp:datalist id="dlOption" runat="server">
<ItemTemplate>
<TABLE id="Table2" cellSpacing="1" cellPadding="1" width="300" border="1">
<TR>
<TD>
<asp:Label id=lbAsk runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"examAsk") %>'>
</asp:Label></TD>
</TR>
<TR>
<TD>
<asp:RadioButtonList id=rblOption runat="server" DataSource='<%# rdlDataBind(DataBinder.Eval(Container.DataItem,"examOption").ToString()) %>'>
</asp:RadioButtonList></TD>
</TR>
</TABLE>
</ItemTemplate>
</asp:datalist>
然后实现rdlDataBind这个方法:protected IEnumerable rdlDataBind(string 题目)
{
return 读取数据库返回题目选项列表(题目);
}这就可以了。大多数数据绑定的例子都是绑定Text之类的属性,实际上动态绑定到ForeColor、DataSource之类的属性也都是可以的,这样可以只写很少的代码,而且绑定代码很清晰也很通用(仅仅返回数据,与被绑定的控件无关),你无需到ItemDataBound之类的事件处理方法中去查找控件。
<TD>
<asp:RadioButtonList id=rblOption runat="server" DataSource='<%# DataBinder.Eval(Container.DataItem,"eOption").ToString() %>'>
</asp:RadioButtonList></TD>
</TR>
if(e.Item.ItemType==ListItemType.Item||e.Item.ItemType==ListItemType.AlternatingItem||e.Item.ItemType==ListItemType.EditItem)
{
RadioButtonList rbt=(RadioButtonList)e.Item.FindControl("rblOption");
string data=Convert.ToString(DataBinder.Eval(e.Item.DataItem,"eOption"));
DataTable dtOpt=this.radblBind(data);
for(int i=0;i<dtOpt.Rows.Count;i++)
{
rbt.Items.Add(it);
}
}