熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> .NET編程 >> 正文

ASP.NET 1.1 ListBox的注意事項

2022-06-13   來源: .NET編程 

  在ASPNet中如果要實現兩個ListBox相互傳遞數據比如有兩個ListBox ListBox 和 ListBox
<asp:ListBox id=ListBox runat=server Height=px

  Width=px>
 <asp:ListItem Value=單片機>單片機</asp:ListItem>
 <asp:ListItem Value=網絡程序設計>網絡程序設計</asp:ListItem>
 <asp:ListItem Value=電子商務>電子商務</asp:ListItem>
 <asp:ListItem Value=計算機圖形學>計算機圖形學</asp:ListItem>
 <asp:ListItem Value=分布式系統>分布式系統</asp:ListItem>
 <asp:ListItem Value=JSP技術>JSP技術</asp:ListItem>
</asp:ListBox>
<asp:ListBox id=ListBox runat=server Height=px

  Width=px></asp:ListBox>

  添加兩個Button button 和 button

  <asp:Button id=Button runat=server Width=px Text=

  添加></asp:Button>
<asp:Button id=Button runat=server Width=px Text=

  刪除></asp:Button>

  給button添加Click事件

  private void Button_Click(object sender SystemEventArgs e)
{
 thisListBoxItemsAdd(thisListBoxSelectedItem);
 thisListBoxItemsRemove(thisListBoxSelectedItem);
}

  button的Click事件
private void Button_Click(object sender SystemEventArgs e)
{
 thisListBoxItemsAdd(thisListBoxSelectedItem);
 thisListBoxItemsRemove(thisListBoxSelectedItem);
}
假象 :表面上看基本的功能已經實現了編譯運行點擊添加按鈕ListBox中選中的確實跑到ListBox中了再次點擊 出現錯誤當SelectionMode 為 Single 時ListBox 不能有多個選定項

  改正方法修改ListBox 和 ListBox的SelectionMode 屬性 設置為 Multiple 基本上可以實現但是效果很次

  改正方法不修改ListBox和ListBox的SelectionMode 屬性 通過修改Button_Click代碼
private void Button_Click(object sender SystemEventArgs e)
{
 thisListBoxItemsAdd(thisListBoxSelectedItem);
 thisListBoxSelectedIndex = ;
 thisListBoxItemsRemove(thisListBoxSelectedItem);
}
假象再次出現當第一次點擊添加時ListBox中的選中項被添加到ListBox並且ListBox中的選定項以刪除再次點擊ListBox中的項

  再次添加到ListBox中但是ListBox中的選定項並為移除我懷疑是SelectIndex的影響在次修改代碼
private void Button_Click(object sender SystemEventArgs e)
{
 thisListBoxItemsAdd(thisListBoxSelectedItem);
 thisListBoxItemsRemove(thisListBoxSelectedItem);
 thisListBoxSelectedIndex = ;
}
這樣就可以了


From:http://tw.wingwit.com/Article/program/net/201311/11364.html
    推薦文章
    Copyright © 2005-2022 電腦知識網 Computer Knowledge   All rights reserved.