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 von ListViewItem darstellen.
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
Checked | 8 | Das Element ist aktiviert. |
Default | 32 | Das Element befindet sich im Standardzustand. |
Focused | 16 | Das Element besitzt den Fokus. |
Grayed | 2 | Das Element ist deaktiviert. |
Hot | 64 | Das Element befindet sich derzeit unter dem Mauszeiger. |
Indeterminate | 256 | Das Element befindet sich in einem unbestimmten Zustand. |
Marked | 128 | Das Element ist markiert. |
Selected | 1 | Das Element ist ausgewählt. |
ShowKeyboardCues | 512 | Das Element sollte eine Tastenkombination angeben. |
Beispiele
Im folgenden Beispiel wird veranschaulicht, wie eine benutzerdefinierte Zeichnung für ein ListView Steuerelement bereitgestellt wird. Das ListView -Steuerelement im Beispiel verfügt über einen Farbverlaufshintergrund. Unterelemente mit negativen Werten haben einen roten Vordergrund und einen schwarzen Hintergrund.
Ein Handler für das ListView.DrawItem Ereignis zeichnet den Hintergrund für ganze Elemente und für die Zeile der Spaltenüberschriften. 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 der Text und 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 Enumeration wird von den DrawListViewItemEventArgs.State Eigenschaften und DrawListViewSubItemEventArgs.ItemState verwendet. Weitere Informationen finden Sie unter den ListView.DrawItem Ereignissen und ListView.DrawSubItem .