HIRO's.NET

VB.NET, C#, PowerShell Tipsサイト

 VB.NET, C#, PowerShellを使用しているエンジニアのためのサイト。

 基本的な使用方法から開発で役立つTipsまで幅広く取り扱っています。

HIRO's.NET RSSHIRO's.NET RSS


VB.NET 2005の開発でお困りのことはありませんか?
そんな悩みは当サイトで解決!!

HOME > VB.NET 2005 Tips > コントロール > ListBox Tips メニュー

13.再描画を回避する

UPDATE:2006/09/10 

<< 前のTips  次のTips >>

 

 ListBox.ItemsのAddメソッドを使用すると項目が追加されるたびに再描画されます。AddRangeメソッドを使用すれば複数の項目を1度に追加できるため問題ないのですが、Addメソッドで多くの項目を追加したい場合があります。このような場合、再描画を回避するには BeginUpdateメソッドとEndUpdateメソッドを使用します。アイテムの追加を開始する前にBeginUpdateメソッドを呼び出し、アイテムの追加が終わったらEndUpdateメソッドを呼び出します。

 
サンプル
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    '再描画を回避するためにBeginUpdateメソッドを呼び出します
    ListBox1.BeginUpdate()

    'アイテムを追加する
    Dim x As Integer
    For x = 0 To 5000
        ListBox1.Items.Add("Item " & x.ToString())
    Next x


    'BeginUpdateを終了し再描画できるようにします
    ListBox1.EndUpdate()
End Sub