Compartilhar via


FrameworkContentElement.Cursor Propriedade

Definição

Obtém ou define o cursor exibido quando o ponteiro do mouse está sobre este 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 como null por 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. Para obter detalhes, consulte Cursor.

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 do mouse, modos de edição de texto dentro de controles e assim por diante, também afetarão o cursor com prioridade mais alta do que o valor especificado nesta propriedade.

Para reverter o comportamento de definir essa propriedade como o padrão eventual, defina-a null como 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 fonte, o cursor padrão sobre um aplicativo de Windows Presentation Foundation (WPF) 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 que o evento é tratado e tem um valor alterado nos argumentos tem 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ática da Cursors classe .

A configuração de Cursor como 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 de dependência

Campo Identificador CursorProperty
Propriedades de metadados definidas como true Nenhum

Aplica-se a

Confira também