FrameworkContentElement.Cursor Właściwość

Definicja

Pobiera lub ustawia kursor wyświetlany, gdy wskaźnik myszy jest nad tym elementem.

C#
public System.Windows.Input.Cursor Cursor { get; set; }

Wartość właściwości

Kursor do wyświetlenia. Wartość domyślna jest definiowana zgodnie z null tą właściwością zależności. Jednak praktyczna wartość domyślna w czasie wykonywania będzie pochodzić z różnych czynników.

Przykłady

Poniższy przykład ustawia kursor na wartość niestandardową.

C#
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;
        }
    }
}

Uwagi

Podczas ustawiania tej właściwości w języku XAML procesor XAML opiera się na konwersji typów klasy Cursor do oceny ciągu. Podany ciąg powinien zostać obliczony CursorType na wartość. Aby uzyskać szczegółowe informacje, zobacz opis funkcji Cursor.

Niezależnie od tego, czy kursor określony przez tę właściwość będzie wyświetlany, czy nie będzie wyświetlany, gdy wskaźnik myszy jest nad tym elementem, również zależy od wartości ForceCursor właściwości. Ponadto zagadnienia związane z zdarzeniami, takie jak aktywne przeciąganie, przechwytywanie myszy, tryby edycji tekstu w kontrolkach itd., będą również mieć wpływ na kursor o wyższym priorytetzie niż wartość określona w tej właściwości.

Aby przywrócić zachowanie ustawiania tej właściwości na wartość domyślną ostateczną, ustaw ją null ponownie.

Wartość domyślna null oznacza, że określenie praktycznej wartości kursora jest odroczone tutaj i powinno zostać uzyskane z innego miejsca. Jeśli nie zostaną wyświetlone żadne wartości programowe z dowolnego źródła, domyślny kursor nad aplikacją Windows Presentation Foundation (WPF) będzie strzałką.

Każdy ruch myszy nad aplikacją QueryCursor WPF zgłasza zdarzenie. Bąbelki zdarzeń i każdy element wzdłuż trasy ma możliwość obsługi zdarzenia i ustawiania wartości kursora za pośrednictwem argumentów tego zdarzenia. Jeśli tak się stanie, fakt, że zdarzenie jest obsługiwane i ma zmienioną wartość argumentów, ma pierwszeństwo przed wartością Cursor właściwości na dowolnym poziomie, chyba że ForceCursor zostanie ustawiona.

Jeśli nie tworzysz kursora niestandardowego, zazwyczaj ustawiasz tę właściwość na wartość właściwości statycznej Cursors klasy.

Ustawienie wartości Cursor niestandardowej nie jest włączone w częściowej relacji zaufania. Aby uzyskać więcej informacji na temat niestandardowych kursorów, zobacz Omówienie danych wejściowych.

Informacje dotyczące właściwości zależności

Pole identyfikatora CursorProperty
Właściwości metadanych ustawione na true Brak

Dotyczy

Produkt Wersje
.NET Framework 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

Zobacz też