none
[C#.net] 關於 listBox SelectAll 全選的問題 RRS feed

  • 問題

  • textBox1.SelectAll()有全選的指令可以使用,請問一下,listbox有這個指令嗎?
    我在軟體的"物件瀏覽器" 搜尋了關鍵字 有找到 System.Windows.Controls.ListBox.SelectAll() ,還有一些關於 SelectAll 等等。

    我也試著寫了
    listBox1.SelectionMode = SelectionMode.MultiSimple;
    for (int i = 0; i <= listBox1.Items.Count - 1; i++)
    {
         listBox1.SelectedIndex = i;
    }
    這樣跑起來超慢....,請問有什麼解決方法呢?
    謝謝!

    2011年7月24日 上午 04:16

解答

  • (1)改用 ListBox.SetSelected 方法 試試看

    (2) 如果還是不夠快, 試著把畫面配置暫止

    this.SuspendLayout()

     //你的迴圈..


    this.ResumeLayout()

    參考

    [Control.SuspendLayout 方法]

    [Control.ResumeLayout 方法 ()]


    在現實生活中,你和誰在一起的確很重要,甚至能改變你的成長軌跡,決定你的人生成敗。 和什麼樣的人在一起,就會有什麼樣的人生。 和勤奮的人在一起,你不會懶惰; 和積極的人在一起,你不會消沈; 與智者同行,你會不同凡響; 與高人為伍,你能登上巔峰。
    • 已提議為解答 503 2011年7月24日 上午 06:10
    • 已標示為解答 tle-Bee 2011年7月24日 下午 12:57
    2011年7月24日 上午 04:39
    版主
  • 您好

    使用 ListBox.BeginUpdate() 與 ListBox.EndUpdate()

          listBox1.BeginUpdate();
    
          for (int i = 0; i < listBox1.Items.Count; i++)
          {
            listBox1.SelectedIndex = i;
          }
    
          listBox1.EndUpdate();
    

     


    歡迎參觀我的Blog.NET菜鳥自救會
    • 已提議為解答 503 2011年7月24日 上午 06:10
    • 已標示為解答 tle-Bee 2011年7月24日 下午 12:57
    2011年7月24日 上午 05:08
    版主

所有回覆

  • (1)改用 ListBox.SetSelected 方法 試試看

    (2) 如果還是不夠快, 試著把畫面配置暫止

    this.SuspendLayout()

     //你的迴圈..


    this.ResumeLayout()

    參考

    [Control.SuspendLayout 方法]

    [Control.ResumeLayout 方法 ()]


    在現實生活中,你和誰在一起的確很重要,甚至能改變你的成長軌跡,決定你的人生成敗。 和什麼樣的人在一起,就會有什麼樣的人生。 和勤奮的人在一起,你不會懶惰; 和積極的人在一起,你不會消沈; 與智者同行,你會不同凡響; 與高人為伍,你能登上巔峰。
    • 已提議為解答 503 2011年7月24日 上午 06:10
    • 已標示為解答 tle-Bee 2011年7月24日 下午 12:57
    2011年7月24日 上午 04:39
    版主
  • 您好

    使用 ListBox.BeginUpdate() 與 ListBox.EndUpdate()

          listBox1.BeginUpdate();
    
          for (int i = 0; i < listBox1.Items.Count; i++)
          {
            listBox1.SelectedIndex = i;
          }
    
          listBox1.EndUpdate();
    

     


    歡迎參觀我的Blog.NET菜鳥自救會
    • 已提議為解答 503 2011年7月24日 上午 06:10
    • 已標示為解答 tle-Bee 2011年7月24日 下午 12:57
    2011年7月24日 上午 05:08
    版主
  • 感謝 Bill Chung 大大 小歐ou 大大 的解答! 試了一下,比之前的快許多

    2011年7月24日 下午 12:51