2
<asp:ListBox ID="list1" runat="server" Height="200" Style=" margin: 0"   OnSelectedIndexChanged="list1_SelectedIndexChanged">
            <asp:ListItem Selected="True" Value="1">1</asp:ListItem>
            <asp:ListItem Value="2">2</asp:ListItem>
            <asp:ListItem Value="3">3</asp:ListItem>
            <asp:ListItem Value="4">4</asp:ListItem>
        </asp:ListBox>

我在 updatePanel 中有列表框

但是当我选择某些东西时它不会触发事件是什么做错了?

4

2 回答 2

8

您需要将AutoPostBack属性设置为 True。那么只有回发发生并且您选择的索引事件将触发。

<asp:ListBox AutoPostBack="true" ID="yourLIst" runat="server" Height="200" Style=" margin: 0"   OnSelectedIndexChanged="yourLIst_SelectedIndexChanged">
于 2013-08-14T09:26:40.647 回答
6

您必须设置AutoPostBacktrue(默认为false):

<asp:ListBox AutoPostBack="true" ID="list1" runat="server" Height="200" Style=" margin: 0"   OnSelectedIndexChanged="list1_SelectedIndexChanged">
   ....

另请注意,您必须仅在初始加载时对 ListBox 进行数据绑定,而不是在每次回发时,因此使用该IsPostBack属性进行检查:

protected void Page_Load(Object sender, EventArgs e)
{ 
    if(!IsPostBack)
        DataBindListBox();
}
于 2013-08-14T09:25:37.947 回答