0

私のaspxページにこれがあります:

<asp:ListBox ID="ListBoxDelete" runat="server" AutoPostBack="true" OnSelectedIndexChanged="ListBoxDelete_SelectedIndexChanged1"></asp:ListBox>

コードビハインド:

protected void Page_Load(object sender, EventArgs e){
   ListBoxDelete.Items.Clear();
   List<string> itens = new List<string>();
   for(var item in itens){
      ListBoxDelete.Items.Add(item);
   }
}

protected void ListBoxDelete_SelectedIndexChanged1(object sender, EventArgs e){
   int x = ListBoxDelete.SelectedIndex;
   doSomething(x);
}

SelectedIndex が機能していません... 私が間違っていなければ、値は常に -1 です。どうしたの?

4

2 に答える 2

1

コードを次のように変更して試してください

protected void Page_Load(object sender, EventArgs e){
if(!IsPostBack)
{
   ListBoxDelete.Items.Clear();
   List<string> itens = new List<string>();
   for(var item in itens){
      ListBoxDelete.Items.Add(item);
   }
}
}
于 2013-03-09T13:26:08.807 に答える
1

Page_Loadif IsPostBackで更新します

protected void Page_Load(object sender, EventArgs e){
 if (!IsPostBack)
    {
     ListBoxDelete.Items.Clear();
     List<string> itens = new List<string>();
      for(var item in itens){
       ListBoxDelete.Items.Add(item);
     }
  }
}
于 2013-03-09T13:26:20.180 に答える