FrameworkElement.Cursor Właściwość
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Pobiera lub ustawia kursor wyświetlany, gdy wskaźnik myszy znajduje się nad tym elementem.
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
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 praktyczne ustawienie domyślne w czasie wykonywania będzie pochodzić z różnych czynników.
Przykłady
W poniższym przykładzie pokazano, jak celowo ustawić grafikę kursora.
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
Uwagi
Po ustawieniu tej właściwości w języku XAML procesor XAML opiera się na konwersji typów dla Cursor klasy w celu obliczenia ciągu. Podany ciąg powinien zostać obliczony CursorType na wartość. Zobacz Cursor , aby uzyskać szczegółowe informacje.
Określa, czy kursor ustanowiony przez tę właściwość będzie wyświetlany, czy nie będzie wyświetlany, gdy wskaźnik myszy znajduje się nad tym elementem, zależy również 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., również będą mieć wpływ na kursor o wyższym priorytcie niż wartość określona w tej właściwości.
Aby przywrócić zachowanie ustawienia 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ą przedstawione bez wartości programowych z dowolnego źródła, domyślny kursor, który jest wizualnie nad aplikacją Windows Presentation Foundation (WPF) będzie strzałką. Zmiany kursora przejściowego nie są jednak ustawione na Cursor wartości elementów po ich przekazaniu. Właściwość Cursor będzie zgłaszać tylko wartości inne niż null w przypadkach, w których została rzeczywiście ustawiona, na przykład za pomocą kodu lub stylu. Każdy ruch myszy nad aplikacją WPF wywołuje QueryCursor zdarzenie. Bąbelki zdarzeń i dowolny element wzdłuż trasy ma możliwość obsługi zdarzenia i ustawiania wartości kursora przez argumenty tego zdarzenia. Jest to mechanizm, który tworzy wizualnie widoczny kursor w większości przypadków.
QueryCursor Jeśli program obsługi zwraca wynik kursora, wówczas fakt, że zdarzenie jest obsługiwane i ma zmienioną wartość w argumentach ma pierwszeństwo przed wartością Cursor właściwości na dowolnym poziomie, chyba że ForceCursor jest ustawiona.
Jeśli nie tworzysz kursora niestandardowego, zazwyczaj ustawisz tę właściwość na wartość właściwości statycznej Cursors klasy. Ustawienie Cursor w kodzie wymaga jednego z następujących elementów:
Wywołaj konstruktor, Cursor aby uzyskać Cursor wystąpienie. Oba podpisy konstruktora Cursor używają strumieni lub plików w oczekiwaniu, że tworzysz Cursor obiekt dla kursora niestandardowego.
CursorConverter Użyj klasy i jej ConvertFrom metody, aby określić kursor według CursorType, lub ciągu, który może ocenić wartość CursorType, i rzutować powrót do Cursor.
Cursor Ustawienie wartości niestandardowej nie jest włączone w częściowym zaufaniu. Aby uzyskać więcej informacji na temat niestandardowych kursorów, zobacz Omówienie danych wejściowych.
Informacje o właściwości zależności
| Produkt | Wartość |
|---|---|
| Pole identyfikatora | CursorProperty |
Właściwości metadanych ustawione na true |
Żadne |