Compartilhar via


FrameworkContentElement.Cursor Propriedade

Definição

Obtém ou define o cursor exibido quando o ponteiro do mouse está sobre esse elemento.

public:
 property System::Windows::Input::Cursor ^ Cursor { System::Windows::Input::Cursor ^ get(); void set(System::Windows::Input::Cursor ^ value); };
public System.Windows.Input.Cursor Cursor { get; set; }
member this.Cursor : System.Windows.Input.Cursor with get, set
Public Property Cursor As Cursor

Valor da propriedade

O cursor a ser exibido. O valor padrão é definido de acordo com null essa propriedade de dependência. No entanto, o padrão prático em tempo de execução virá de uma variedade de fatores.

Exemplos

O exemplo a seguir define o cursor como um valor personalizado.

private void CursorTypeChanged(object sender, SelectionChangedEventArgs e)
{
    ComboBox source = e.Source as ComboBox;

    if (source != null)
    {
        ComboBoxItem selectedCursor = source.SelectedItem as ComboBoxItem;

        // Changing the cursor of the Border control 
        // by setting the Cursor property
        switch (selectedCursor.Content.ToString())
        {
            case "AppStarting":
                DisplayArea.Cursor = Cursors.AppStarting;
                break;
            case "ArrowCD":                        
                DisplayArea.Cursor = Cursors.ArrowCD;
                break;
            case "Arrow":
                DisplayArea.Cursor = Cursors.Arrow;
                break;
            case "Cross":
                DisplayArea.Cursor = Cursors.Cross;
                break;
            case "HandCursor":
                DisplayArea.Cursor = Cursors.Hand;
                break;
            case "Help":
                DisplayArea.Cursor = Cursors.Help;
                break;
            case "IBeam":
                DisplayArea.Cursor = Cursors.IBeam;
                break;
            case "No":
                DisplayArea.Cursor = Cursors.No;
                break;
            case "None":
                DisplayArea.Cursor = Cursors.None;
                break;
            case "Pen":
                DisplayArea.Cursor = Cursors.Pen;
                break;
            case "ScrollSE":
                DisplayArea.Cursor = Cursors.ScrollSE;
                break;
            case "ScrollWE":
                DisplayArea.Cursor = Cursors.ScrollWE;
                break;
            case "SizeAll":
                DisplayArea.Cursor = Cursors.SizeAll;
                break;
            case "SizeNESW":
                DisplayArea.Cursor = Cursors.SizeNESW;
                break;
            case "SizeNS":
                DisplayArea.Cursor = Cursors.SizeNS;
                break;
            case "SizeNWSE":
                DisplayArea.Cursor = Cursors.SizeNWSE;
                break;
            case "SizeWE":
                DisplayArea.Cursor = Cursors.SizeWE;
                break;
            case "UpArrow":
                DisplayArea.Cursor = Cursors.UpArrow;
                break;
            case "WaitCursor":
                DisplayArea.Cursor = Cursors.Wait;
                break;
            case "Custom":
                DisplayArea.Cursor = CustomCursor;
                break;
            default:
                break;
        }

        // If the cursor scope is set to the entire application
        // Use OverrideCursor to force the cursor for all elements
        if (!cursorScopeElementOnly)
        {
            Mouse.OverrideCursor = DisplayArea.Cursor;
        }
    }
}
' When the Radiobox changes, a new cursor type is set
Private Sub CursorTypeChanged(ByVal sender As Object, ByVal e As SelectionChangedEventArgs)

    Dim item As String = CType(e.Source, ComboBox).SelectedItem.Content.ToString()

    Select Case item
        Case "AppStarting"
            DisplayArea.Cursor = Cursors.AppStarting
        Case "ArrowCD"
            DisplayArea.Cursor = Cursors.ArrowCD
        Case "Arrow"
            DisplayArea.Cursor = Cursors.Arrow
        Case "Cross"
            DisplayArea.Cursor = Cursors.Cross
        Case "HandCursor"
            DisplayArea.Cursor = Cursors.Hand
        Case "Help"
            DisplayArea.Cursor = Cursors.Help
        Case "IBeam"
            DisplayArea.Cursor = Cursors.IBeam
        Case "No"
            DisplayArea.Cursor = Cursors.No
        Case "None"
            DisplayArea.Cursor = Cursors.None
        Case "Pen"
            DisplayArea.Cursor = Cursors.Pen
        Case "ScrollSE"
            DisplayArea.Cursor = Cursors.ScrollSE
        Case "ScrollWE"
            DisplayArea.Cursor = Cursors.ScrollWE
        Case "SizeAll"
            DisplayArea.Cursor = Cursors.SizeAll
        Case "SizeNESW"
            DisplayArea.Cursor = Cursors.SizeNESW
        Case "SizeNS"
            DisplayArea.Cursor = Cursors.SizeNS
        Case "SizeNWSE"
            DisplayArea.Cursor = Cursors.SizeNWSE
        Case "SizeWE"
            DisplayArea.Cursor = Cursors.SizeWE
        Case "UpArrow"
            DisplayArea.Cursor = Cursors.UpArrow
        Case "WaitCursor"
            DisplayArea.Cursor = Cursors.Wait
        Case "Custom"
            DisplayArea.Cursor = CustomCursor
    End Select

    ' if the cursor scope is set to the entire application
    ' use OverrideCursor to force the cursor for all elements
    If (cursorScopeElementOnly = False) Then
        Mouse.OverrideCursor = DisplayArea.Cursor
    End If


End Sub

Comentários

Ao definir essa propriedade em XAML, o processador XAML depende da conversão de tipo para a Cursor classe avaliar a cadeia de caracteres. A cadeia de caracteres fornecida deve ser avaliada como um CursorType valor. Veja Cursor para detalhes.

Se o cursor conforme estabelecido por essa propriedade será exibido ou não quando o ponteiro do mouse estiver sobre esse elemento também dependerá do valor da ForceCursor propriedade. Além disso, considerações relacionadas a eventos, como um arrastar ativo, captura de mouse, modos de edição de texto dentro de controles e assim por diante, também afetarão o cursor com prioridade maior do que o valor especificado nesta propriedade.

Para reverter o comportamento de definir essa propriedade para o padrão eventual, defina-a como null novamente.

O null padrão realmente significa que a determinação do valor prático do cursor é adiada aqui e deve ser obtida de outro lugar. Se apresentado sem valores programáticos de qualquer origem, o cursor padrão em um aplicativo WPF (Windows Presentation Foundation) será uma seta.

Cada movimento do mouse sobre um aplicativo WPF gera um QueryCursor evento. As bolhas de evento e qualquer elemento ao longo da rota têm a oportunidade de manipular o evento e definir o valor do cursor por meio dos argumentos desse evento. Se isso acontecer, o fato de o evento ser tratado e ter um valor alterado nos argumentos terá precedência sobre o valor da Cursor propriedade em qualquer nível, a menos que ForceCursor seja definido.

Se não estiver criando um cursor personalizado, normalmente você definirá essa propriedade como um valor de propriedade estático da Cursors classe.

A configuração de Cursor um valor personalizado não está habilitada na confiança parcial. Para obter mais informações sobre cursores personalizados, consulte Visão geral de entrada.

Informações da propriedade Dependency

Item Valor
Campo identificador CursorProperty
Propriedades de metadados definidas como true Nenhum

Aplica-se a

Confira também