Класс ListItem
не имеет свойства onclick
.
Похоже, что ListItem
реализует интерфейс IAttributesAccessor
, а также имеет коллекцию Attributes
. Это задокументировано как:
Получает коллекцию пар имени и значения атрибута для ListItem, которые не поддерживаются классом напрямую.
Атрибуты, которые вы помещаете в тег таким образом, отображаются при визуализации элемента управления. Детали этого отличаются по контролю. Я экспериментировал со страницей, содержащей следующее:
<asp:DropDownList ID="_ddl1" runat="server" >
<asp:ListItem Text="Item 1" Value="Item1" onClick="foox();" oncluck="bar(this);" />
</asp:DropDownList>
<asp:ListBox ID="_listBox1" runat="server">
<asp:ListItem Text="Item 1" Value="Item1" onClick="foox();" oncluck="bar(this);" />
</asp:ListBox>
<asp:RadioButtonList ID="_radioList1" runat="server">
<asp:ListItem Text="Item 1" Value="Item1" onClick="foox();" oncluck="bar(this);" />
</asp:RadioButtonList>
В случае DropDownList
и ListBox
оба атрибута отображаются в элементе <Option>
. В случае RadioButtonList
атрибут onclick
отображается в элементе <input type="radio">
, а нераспознанный элемент oncluck
- в элементе <span>
.
Обратите внимание, что событие oncluck
, по-видимому, никогда не запускается.
; -)