<asp:TemplateField HeaderText="有/无">  <EditItemTemplate>
       <asp:RadioButtonList ID="RadioButtonList1" runat="server" >
            <asp:ListItem  Selected='Convert.ToBoolean(DataBinder.EvalContainer, "DataItem.yn"))?"False":"True" '>否</asp:ListItem>
            <asp:ListItem Selected='Convert.ToBoolean(DataBinder.Eval(Container, "DataItem.yn"))?"True":"False" '>是</asp:ListItem>
            
        </asp:RadioButtonList>
  </EditItemTemplate>     
</asp:TemplateField>其中字段:DataItem.yn在数据哭里是布尔值,有真有假,为什么点击修改按扭时,显示的都是第而个"是",
如果把"否"和"是"颠倒顺序,就全部变成"否"了,请问是什么原因呢.
我把 "True":"False" 这两个值 调整顺序也不成.

解决方案 »

  1.   

    看看这样
    <asp:TemplateField HeaderText="有/无">
                           <EditItemTemplate>
                               <asp:RadioButtonList ID="RadioButtonList1" runat="server" >
                <asp:ListItem  Selected='Convert.ToBoolean(DataBinder.Eval(Container.DataItem,"yn"))?"False":"True" '>否</asp:ListItem>
                <asp:ListItem Selected='Convert.ToBoolean(DataBinder.Eval(Container.DataItem,"yn"))?"True":"False" '>是</asp:ListItem>
                
            </asp:RadioButtonList>
      </EditItemTemplate>     
    </asp:TemplateField>
      

  2.   

    你没写绑定符号阿
    你的值就变成固定的了。
    要用<%#  %>
      

  3.   

    建议你直接在sql语句里面把true和false都转换好,直接绑定近来就行了。
      

  4.   

    <EditItemTemplate>
         <asp:RadioButtonList ID="RadioButtonList1" runat="server"  RepeatDirection="Horizontal"  >
        <asp:ListItem  Text='<%# ConvertType(DataBinder.Eval(Container.DataItem, "yn")) %>'  /> 
        <asp:ListItem  Text='<%# ConvertType(DataBinder.Eval(Container.DataItem, "yn")) %>'  />  
                 
        </asp:RadioButtonList> 
    </EditItemTemplate>不行,系统提示错误:
    仅对具有 DataBinding 事件的对象提供数据绑定表达式支持。System.Web.UI.WebControls.ListItem 没有 DataBinding 事件。 
      

  5.   

    <EditItemTemplate>
         <asp:RadioButtonList ID="RadioButtonList1" runat="server"  RepeatDirection="Horizontal"  >
        <asp:ListItem  Text='<%# ConvertType(DataBinder.Eval(Container.DataItem, "yn")) %>'  /> 
        <asp:ListItem  Text='<%# ConvertType(DataBinder.Eval(Container.DataItem, "yn")) %>'  />  
                 
        </asp:RadioButtonList> 
    </EditItemTemplate>不行,系统提示错误:
    仅对具有 DataBinding 事件的对象提供数据绑定表达式支持。System.Web.UI.WebControls.ListItem 没有 DataBinding 事件。 
      

  6.   

    不要用RadioButtonList,直接用RadioButton或者input type="radio"即可