Флажок Asp.Net C # - PullRequest
       6

Флажок Asp.Net C #

3 голосов
/ 31 декабря 2011

Можно ли как-нибудь обернуть список флажков в asp.net, чтобы, например, если в вашем списке было 20 флажков, есть два столбца из 10. Пример:

Box                   Box
Box                   Box
Box                   Box
Box                   Box
Box                   Box
Box                   Box
Box                   Box
Box                   Box

Мой текущий код:

<asp:CheckBoxList ID="Numbers" runat="server" AutoPostBack = "true">
        <asp:ListItem> 1 </asp:ListItem>  
        <asp:ListItem> 2 </asp:ListItem>
        <asp:ListItem> 3 </asp:ListItem>
        <asp:ListItem> 4 </asp:ListItem>
        <asp:ListItem> 5 </asp:ListItem>
        <asp:ListItem> 6 </asp:ListItem>
        <asp:ListItem> 7 </asp:ListItem>
        <asp:ListItem> 8 </asp:ListItem>
        <asp:ListItem> 9 </asp:ListItem>
        ...ect
</asp:CheckBoxList>

Я полагаю, что должна быть какая-то разметка asp или что-то, что позволило бы мне очистить этот список флажков.

Ответы [ 2 ]

5 голосов
/ 31 декабря 2011

То, что вы ищете, это свойство RepeatColumns и свойство RepeatDirection. Примерно так:

<asp:CheckBoxList ID="Numbers" runat="server" AutoPostBack = "true" 
    RepeatColumns="2" RepeatDirection="Vertical"> 
        <asp:ListItem> 1 </asp:ListItem>   
        <asp:ListItem> 2 </asp:ListItem> 
        <asp:ListItem> 3 </asp:ListItem> 
        <asp:ListItem> 4 </asp:ListItem> 
        <asp:ListItem> 5 </asp:ListItem> 
        <asp:ListItem> 6 </asp:ListItem> 
        <asp:ListItem> 7 </asp:ListItem> 
        <asp:ListItem> 8 </asp:ListItem> 
        <asp:ListItem> 9 </asp:ListItem> 
        ...ect 
</asp:CheckBoxList> 

Согласно приведенной ниже ссылке, вы также можете установить это свойство программно в своем коде, используя RepeatDirection enum :

Numbers.RepeatDirection = RepeatDirection.Vertical;
Numbers.RepeatColumns = 2;

См. Это как ссылку: Как: настроить макет в элементе управления веб-сервера CheckBoxList

3 голосов
/ 31 декабря 2011

Да, используйте свойство RepeatColumns.Если вы хотите, чтобы он отображался таким образом только после того, как вы динамически связали элемент управления и у него более десяти элементов, просто посчитайте элементы в Page_Load и установите для RepeatColumns значение 2, если источник данных содержит более 10 элементов.

Здесь - документация msdn для получения дополнительной информации.

...