BulletedList
Этот элемент управления позволяет воспроизвести нумерованные и ненумерованные маркированные списки и добавляет к этому много новых возможностей. Это — новый элемент ASP .NET 2.0, который тоже может быть привязан к данным.
Тип списка определяется свойством BulletStyle. Список может быть пронумерован цифрами, буквами или латинскими числами либо же помечен маркерами разных форм:
<asp:BulletedList ID="BulletedList1" runat="server" BulletStyle="Numbered"> <asp:ListItem>Чебурашка</asp:ListItem> <asp:ListItem>Крокодил Гена</asp:ListItem> <asp:ListItem>Шапокляк</asp:ListItem> </asp:BulletedList>
Выглядит на странице как
- Чебурашка
- Крокодил Гена
- Шапокляк
А его HTML-код
<ol id="BulletedList1" style="list-style-type:decimal;"> <li>Чебурашка</li><li>Крокодил Гена</li><li>Шапокляк</li>
Если свойство BulletStyle поменять на "Circle", то будет сгененирован ненумерованный список:
<ul id="BulletedList1" style="list-style-type:circle;"> <li>Чебурашка</li><li>Крокодил Гена</li><li>Шапокляк</li>
При значении CustomImage необходимо задать картинку в свойстве BulletImageUrl. Элементами списка могут быть гиперссылки и кнопки-гиперссылки:
<asp:BulletedList ID="BulletedListLinks" runat="server" BulletStyle ="Circle" DisplayMode="HyperLink"> <asp:ListItem Value="http://chebur.polyn.kiae.su">Чебурашка </asp:ListItem> <asp:ListItem Value="http://gena.crocodile.net">Крокодил Гена</asp:ListItem> <asp:ListItem Value="http://chapeauclack.com">Шапокляк </asp:ListItem> </asp:BulletedList>
Сами гиперссылки следует записывать в атрибут ListItem Value.
Тип LinkButton превращает пункты списка в гиперссылки, которые вызывают перезагрузку страницы. Обработчик нажатия на кнопки принимает аргумент, в котором содержится информация об индексе нажатого пункта:
<asp:BulletedList ID="BulletedListLinks" runat="server" BulletStyle ="Circle" DisplayMode="LinkButton" OnClick="BulletedListLinks_Click"> <asp:ListItem Value="Red">Красный</asp:ListItem> <asp:ListItem Value="Blue">Синий</asp:ListItem> <asp:ListItem Value="Green">Зеленый</asp:ListItem> </asp:BulletedList>
protected void BulletedListLinks_Click(object sender, BulletedListEventArgs e) { switch (e.Index) { case 0: BulletedListLinks.BackColor = System.Drawing.Color.LightCoral; break; case 1: BulletedListLinks.BackColor = System.Drawing.Color.Aqua; break; case 2: BulletedListLinks.BackColor = System.Drawing.Color.LightGreen; break; } }