ListViewItemStates Enumeration
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Definiert Konstanten, die die möglichen Zustände eines ListViewItemdarstellen.
Diese Enumeration unterstützt eine bitweise Kombination ihrer Memberwerte.
public enum class ListViewItemStates
[System.Flags]
public enum ListViewItemStates
[<System.Flags>]
type ListViewItemStates =
Public Enum ListViewItemStates
- Vererbung
- Attribute
Felder
| Name | Wert | Beschreibung |
|---|---|---|
| Selected | 1 | Das Element ist ausgewählt. |
| Grayed | 2 | Das Element ist deaktiviert. |
| Checked | 8 | Das Element wird überprüft. |
| Focused | 16 | Das Element hat den Fokus. |
| Default | 32 | Das Element befindet sich im Standardzustand. |
| Hot | 64 | Das Element befindet sich derzeit unter dem Mauszeiger. |
| Marked | 128 | Das Element ist markiert. |
| Indeterminate | 256 | Das Element befindet sich in einem unbestimmten Zustand. |
| ShowKeyboardCues | 512 | Das Element sollte eine Tastenkombination angeben. |
Beispiele
Im folgenden Beispiel wird veranschaulicht, wie Sie eine benutzerdefinierte Zeichnung für ein ListView Steuerelement bereitstellen. Das ListView Steuerelement im Beispiel weist einen Farbverlaufshintergrund auf. Unterelemente mit negativen Werten weisen einen roten Vordergrund und einen schwarzen Hintergrund auf.
Ein Handler für das ListView.DrawItem Ereignis zeichnet den Hintergrund für ganze Elemente und für die Spaltenüberschriftenzeile. Ein Handler für das ListView.DrawSubItem Ereignis zeichnet die Textwerte und sowohl den Text als auch den Hintergrund für Unterelemente mit negativen Werten.
Eine ContextMenu Komponente bietet eine Möglichkeit, zwischen der Detailansicht und der Liste zu wechseln. In der Listenansicht wird nur das ListView.DrawItem Ereignis ausgelöst. In diesem Fall werden sowohl der Text als auch der ListView.DrawItem Hintergrund im Ereignishandler gezeichnet.
Das vollständige Beispiel finden Sie im ListView.OwnerDraw Referenzthema.
// 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
Hinweise
Diese Aufzählung wird von den Eigenschaften und DrawListViewItemEventArgs.State den DrawListViewSubItemEventArgs.ItemState Eigenschaften verwendet. Weitere Informationen finden Sie unter den ListView.DrawItem Und ListView.DrawSubItem Ereignissen.