Aracılığıyla paylaş


DrawListViewItemEventArgs.State Özellik

Tanım

Çizecek öğesinin ListViewItem geçerli durumunu alır.

public:
 property System::Windows::Forms::ListViewItemStates State { System::Windows::Forms::ListViewItemStates get(); };
public System.Windows.Forms.ListViewItemStates State { get; }
member this.State : System.Windows.Forms.ListViewItemStates
Public ReadOnly Property State As ListViewItemStates

Özellik Değeri

değerinin ListViewItemStates geçerli durumunu ListViewItemgösteren bit düzeyinde bir değer bileşimi.

Örnekler

Aşağıdaki kod örneği, bir denetim için ListView özel çizim sağlayan bir uygulamada özelliğinin nasıl kullanılacağını State gösterir. Örnekte, olay işleyicisi ListView.DrawItem tüm öğelerin arka planını çizer. Ayrıntılar görünümü dışındaki tüm görünümlerde, bu işleyici ön plan metnini de çizer. Ayrıntılar görünümünde ön plan metni etkinlikte ListView.DrawSubItem çizilir.

Tam örnek için genel bakış başvuru konusuna DrawListViewItemEventArgs bakın.

// Draws the backgrounds for entire ListView items.
private void listView1_DrawItem(object sender,
    DrawListViewItemEventArgs e)
{
    if ((e.State & ListViewItemStates.Selected) != 0)
    {
        // Draw the background and focus rectangle for a selected item.
        e.Graphics.FillRectangle(Brushes.Maroon, e.Bounds);
        e.DrawFocusRectangle();
    }
    else
    {
        // Draw the background for an unselected item.
        using (LinearGradientBrush brush =
            new LinearGradientBrush(e.Bounds, Color.Orange,
            Color.Maroon, LinearGradientMode.Horizontal))
        {
            e.Graphics.FillRectangle(brush, e.Bounds);
        }
    }

    // Draw the item text for views other than the Details view.
    if (listView1.View != View.Details)
    {
        e.DrawText();
    }
}
' Draws the backgrounds for entire ListView items.
Private Sub listView1_DrawItem(ByVal sender As Object, _
    ByVal e As DrawListViewItemEventArgs) _
    Handles listView1.DrawItem

    If Not (e.State And ListViewItemStates.Selected) = 0 Then

        ' Draw the background for a selected item.
        e.Graphics.FillRectangle(Brushes.Maroon, e.Bounds)
        e.DrawFocusRectangle()

    Else

        ' Draw the background for an unselected item.
        Dim brush As New LinearGradientBrush(e.Bounds, Color.Orange, _
            Color.Maroon, LinearGradientMode.Horizontal)
        Try
            e.Graphics.FillRectangle(brush, e.Bounds)
        Finally
            brush.Dispose()
        End Try

    End If

    ' Draw the item text for views other than the Details view.
    If Not Me.listView1.View = View.Details Then
        e.DrawText()
    End If

End Sub

Açıklamalar

Çizecek öğesinin ListViewItem belirli bir durumda olup olmadığını denetlemek için bu özelliği kullanın. Bu özellik, öğe hakkında yalnızca temel durum bilgileri sağlar. Örneğin, bir öğenin seçili, işaretli veya odaklanmış olup olmadığını belirlemek için bu özelliği kullanabilirsiniz. Daha fazla bilgi sahibi olmanız gerekiyorsa, öğeyi özelliği aracılığıyla Item alın ve özelliklerini doğrudan denetleyin.

Şunlara uygulanır

Ayrıca bkz.