DrawListViewItemEventArgs.State Egenskap
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Hämtar det aktuella tillståndet för att ListViewItem rita.
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
Egenskapsvärde
En bitvis kombination av ListViewItemStates värden som anger aktuellt tillstånd för ListViewItem.
Exempel
Följande kodexempel visar hur du State använder egenskapen i ett program som tillhandahåller anpassad ritning för en ListView kontroll. I exemplet ritar en hanterare för ListView.DrawItem händelsen bakgrunden för hela objekt. I alla vyer utom informationsvyn ritar den här hanteraren även förgrundstexten. I informationsvyn ritas förgrundstexten ListView.DrawSubItem i händelsen.
Det fullständiga exemplet finns i översiktsreferensavsnittet DrawListViewItemEventArgs .
// 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
Kommentarer
Använd den här egenskapen för att kontrollera om att ListViewItem rita är i ett visst tillstånd. Den här egenskapen innehåller endast grundläggande tillståndsinformation om objektet. Du kan till exempel använda den här egenskapen för att avgöra om ett objekt är markerat, markerat eller fokuserat. Om du behöver veta mer hämtar du objektet via egenskapen Item och kontrollerar dess egenskaper direkt.