<asp:TemplateColumn HeaderText="Purpose" ItemStyle-CssClass="BGffffff">
<ItemTemplate>
<asp:CheckBoxList id="Purpose" RepeatDirection="Horizontal" RepeatColumns="3" runat="server">
<asp:ListItem Value="aa">aa</asp:ListItem>
<asp:ListItem Value="bb">bb</asp:ListItem>
<asp:ListItem Value="cc">cc</asp:ListItem>
                                           </asp:CheckBoxList>
</ItemTemplate>
</asp:TemplateColumn>
我数据库里面的purpose存放一个值aa,bb或cc,我想要的效果是
当数据库里面的值是aa的时候,aa选项前面自动打勾,
当数据库里面的值是bb的时候,bb选项前面自动打勾,
当数据库里面的值是cc的时候,cc选项前面自动打勾,
应该怎么写??

解决方案 »

  1.   

    在<asp:CheckBoxList id="Purpose" RepeatDirection="Horizontal" RepeatColumns="3" runat="server">行增加 SelectedValue='<%# DataBinder.Eval(Container, "DataItem.purpose").ToString().Trim() %>'即<asp:CheckBoxList id="Purpose" RepeatDirection="Horizontal" RepeatColumns="3" 
    SelectedValue='<%# DataBinder.Eval(Container, "DataItem.purpose").ToString().Trim() %>' runat="server">
    不过因为你是CheckBoxList,可以复选,即purpose字段可能为aa,bb 这种类型,
    最好还是把purpose字段内容放到arraylist里面,然后
    用arraylist 的Contains()方法判断里面是否有某个ListItem,有就选中~!
      

  2.   

    给分啦,呵呵,~!我等你等了好久~~~~~ :)
    难得碰到个会的问题,HOHO~!