DrawListViewItemEventArgs.State Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém o estado atual do ListViewItem a ser desenhado.
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
Valor da propriedade
Uma combinação bit a bit de ListViewItemStates valores que indica o estado atual do ListViewItem.
Exemplos
O exemplo de código a seguir demonstra como usar a State propriedade em um aplicativo que fornece desenho personalizado para um ListView controle. No exemplo, um manipulador para o ListView.DrawItem evento desenha a tela de fundo para itens inteiros. Em todos os modos de exibição, exceto no modo de exibição de detalhes, esse manipulador também desenha o texto em primeiro plano. Na exibição de detalhes, o texto em primeiro plano é desenhado no ListView.DrawSubItem evento.
Para obter o exemplo completo, consulte o DrawListViewItemEventArgs tópico de referência de visão geral.
// 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
Comentários
Use essa propriedade para marcar se o ListViewItem a ser desenhado está em um estado específico. Essa propriedade fornece apenas informações básicas de estado sobre o item. Você pode usar essa propriedade, por exemplo, para determinar se um item está selecionado, marcado ou focado. Se você precisar saber mais, recupere o item por meio da Item propriedade e marcar suas propriedades diretamente.