日期:2014-05-19  浏览次数:20460 次

RadioButtonList在repeater中绑定的问题
在一个repeater中的Radiobuttonlist想用绑定于repeater的值,该怎么做?

我是这样写的
前台(代码是在repeater中,repeater已绑定数据):

  <asp:RadioButtonList   ID= "zj "   runat= "server "   RepeatDirection= "Horizontal "   CssClass= "Use12 ">
<asp:ListItem   Value= "0 "   Selected= <%#   IsSelect(DataBiner.Eval(Container.DataItem, "zj ").ToString(), "0 ")   %> > 中介 </asp:ListItem>

<asp:ListItem   Value= "1 "   Selected= <%#   IsSelect(DataBiner.Eval(Container.DataItem, "zj ").ToString(), "1 ")   %> > 非中介 </asp:ListItem>
                                    </asp:RadioButtonList>


.CS==================

  protected   bool   IsSelect(string   zj,string   rvalue)
        {
                if   (zj   ==   rvalue)
                {
                        return   true;
                }
                else
                {
                        return   false;
                }
        }

这些是在一个大的repeater里面的,但是报错如下:

分析器错误信息:   仅对具有   DataBinding   事件的对象提供数据绑定表达式支持。System.Web.UI.WebControls.ListItem   没有   DataBinding   事件。

------解决方案--------------------

------解决方案--------------------
不能这样写的;你需要在Repeater1_ItemDataBound这个事件里面去直接绑定你的Radiobuttonlist
------解决方案--------------------
<asp:ListItem Value= "1 " Selected= <%# IsSelect(DataBiner.Eval(Container.DataItem, "zj ").ToString(), "1 ") %> > 非中介 </asp:ListItem>
------------
不要这样写。。。
这样写
<asp:ListItem Value= "1 "> 非中介 </asp:ListItem>
在后台CS代码的Repeater1_ItemDataBound中写
RadioButtonList rbl = (RadioButtonList)e.Item.FindControl( " ");
rbl.Selected = " ";


------解决方案--------------------
应该为:
RadioButton rbl = (RadioButtonList)e.Item.FindControl( "rb1 ");
rbl.Selected = " ";
------解决方案--------------------
没有明白你到底是什么意思.不知道是不是你要的。
protected void Repeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item)
{
RadioButtonList rbl1 = (RadioButtonList)e.Item.FindControl( "rbl ");
rbl1.DataSource = Repeater1.DataSource;
rbl1.DataBind();
rbl1.SelectedItem.Text = Repeater1.Items[e.Item.ItemIndex].DataItem;
}
}
------解决方案--------------------
你把男,女都放到数组里不就可以了。string[] sex={ "男 ", "女 "};
然后绑定数组就可以了。

------解决方案--------------------