ListViewItemStates Enumeración
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Define constantes que representan los posibles estados de ListViewItem.
Esta enumeración admite una combinación bit a bit de sus valores de miembro.
public enum class ListViewItemStates
[System.Flags]
public enum ListViewItemStates
[<System.Flags>]
type ListViewItemStates =
Public Enum ListViewItemStates
- Herencia
- Atributos
Campos
Checked | 8 | El elemento está activado. |
Default | 32 | El elemento está en su estado predeterminado. |
Focused | 16 | El elemento tiene el foco. |
Grayed | 2 | El elemento está deshabilitado. |
Hot | 64 | El elemento está actualmente bajo el puntero del mouse. |
Indeterminate | 256 | El elemento está en un estado indeterminado. |
Marked | 128 | El elemento está marcado. |
Selected | 1 | El elemento está seleccionado. |
ShowKeyboardCues | 512 | El elemento debe indicar un método abreviado de teclado. |
Ejemplos
En el ejemplo siguiente se muestra cómo proporcionar un dibujo personalizado para un ListView control . El ListView control del ejemplo tiene un fondo degradado. Los subelementos con valores negativos tienen un primer plano rojo y un fondo negro.
Un controlador para el ListView.DrawItem evento dibuja el fondo de elementos completos y para la fila de encabezados de columna. Un controlador para el ListView.DrawSubItem evento dibuja los valores de texto y el texto y el fondo de los subelementos que tienen valores negativos.
Un ContextMenu componente proporciona una manera de cambiar entre la vista de detalles y la lista. En la vista de lista, solo se desencadena el ListView.DrawItem evento. En este caso, el texto y el fondo se dibujan en el controlador de ListView.DrawItem eventos.
Para obtener el ejemplo completo, consulte el tema de ListView.OwnerDraw referencia.
// 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
Comentarios
Esta enumeración la usan las DrawListViewItemEventArgs.State propiedades y DrawListViewSubItemEventArgs.ItemState . Para obtener más información, consulte los ListView.DrawItem eventos y ListView.DrawSubItem .