FrameworkElement.Cursor FrameworkElement.Cursor FrameworkElement.Cursor FrameworkElement.Cursor Property

Définition

Obtient ou définit le curseur qui s'affiche lorsque le pointeur de la souris est sur cet élément.Gets or sets the cursor that displays when the mouse pointer is over this element.

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

Valeur de propriété

Curseur à afficher.The cursor to display. La valeur par défaut est null conformément à cette propriété de dépendance.The default value is defined as null per this dependency property. Toutefois, la valeur pratique par défaut au moment de l’exécution provient de divers facteurs.However, the practical default at run time will come from a variety of factors.

Exemples

L’exemple suivant montre comment définir délibérément le graphique du curseur.The following example shows how to deliberately set the cursor graphic.

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 == false)
        {
            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

Remarques

Lorsque vous définissez cette propriété XAMLXAML, le XAMLXAML processeur s’appuie sur la conversion de type pour la Cursor classe pour évaluer la chaîne.When you set this property in XAMLXAML, the XAMLXAML processor relies on type conversion for the Cursor class to evaluate the string. La chaîne fournie doit être évaluée en une CursorType valeur.The provided string should evaluate to a CursorType value. Pour plus d'informations, consultez Cursor.See Cursor for details.

Si le curseur établi par cette propriété ou n’affiche pas lorsque le pointeur de la souris est au-dessus de cet élément est également dépendant de la valeur de la ForceCursor propriété.Whether the cursor as established by this property will or will not display when the mouse pointer is over this element is also dependent on the value of the ForceCursor property. En outre, liées aux événements de considérations telles qu’un glisser active, capture de la souris, les modes dans des contrôles et ainsi de suite, d’édition de texte affecte également le curseur avec une priorité plus élevée que la valeur que vous spécifiez dans cette propriété.Also, event-related considerations such as an active drag, mouse capture, text editing modes within controls, and so on, will also affect the cursor with higher priority than the value you specify in this property.

Pour rétablir le comportement de la définition de cette propriété sur la valeur par défaut éventuelle, affectez-lui la valeur null à nouveau.To revert the behavior of setting this property to the eventual default, set it to null again.

Le null par défaut signifie en réalité que la détermination de la valeur de curseur pratique est différée ici et doit être obtenue à partir d’un autre emplacement.The null default really means that determination of the practical cursor value is deferred here and should be obtained from elsewhere. Si présentés sans valeurs par programmation à partir de n’importe quelle source, le curseur par défaut qui se trouve visuellement sur une Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) application sera une flèche.If presented without programmatic values from any source, the default cursor that is visually over a Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) application will be an arrow. Toutefois, les modifications transitoires du curseur ne sont pas définies le Cursor valeurs des éléments lorsqu’ils sont transmis.However, the transient cursor changes are not set to the Cursor values of the elements when they are passed over. Le Cursor des valeurs de propriété sera uniquement rapport non null dans les cas où il a été effectivement défini, par exemple via le code ou un style.The Cursor property will only report non null values in cases where it was actually set, for instance through code or a style. Chaque mouvement de la souris sur un WPFWPF application déclenche une QueryCursor événement.Each movement of the mouse over a WPFWPF application raises a QueryCursor event. L’événement se propage et tout élément le long de l’itinéraire a la possibilité de gérer l’événement et définir la valeur du curseur via les arguments de cet événement.The event bubbles, and any element along the route has the opportunity to handle the event and to set the value of the cursor through the arguments of this event. C’est le mécanisme qui produit le curseur visuellement apparent dans la plupart des cas.This is the mechanism that produces the visually apparent cursor in most cases. Si un QueryCursor gestionnaire renvoie un résultat de curseur, puis le fait que l’événement est géré et qu’il a une valeur modifiée dans les arguments est prioritaire sur la valeur de la Cursor propriété à n’importe quel niveau, sauf si ForceCursor est défini.If a QueryCursor handler returns a cursor result, then the fact that the event is handled and has a changed value in the arguments takes precedence over the value of the Cursor property at any level, unless ForceCursor is set.

Si vous ne créez ne pas un curseur personnalisé, vous définissez généralement cette propriété sur une valeur de propriété statique de la Cursors classe.If not are not creating a custom cursor, you typically set this property to a static property value of the Cursors class. Paramètre Cursor dans le code requiert l’une des opérations suivantes :Setting Cursor in code requires one of the following:

  • Appelez le Cursor constructeur pour obtenir un Cursor instance.Call the Cursor constructor to get a Cursor instance. Les deux signatures de la Cursor constructeur utiliser flux ou des fichiers, en prévision que vous créez le Cursor objet pour un curseur personnalisé.Both signatures of the Cursor constructor use streams or files, in anticipation that you are creating the Cursor object for a custom cursor.

  • Utilisez le CursorConverter classe et ses ConvertFrom méthode pour spécifier un curseur par CursorType, ou une chaîne qui peut correspondre à un CursorTypeet effectuer un cast de revenir à Cursor.Use the CursorConverter class and its ConvertFrom method to specify a cursor by CursorType, or a string that can evaluate to a CursorType, and cast the return to Cursor.

Définition de la Cursor sur une valeur personnalisée n’est pas activé en mode de confiance partielle.Setting the Cursor to a custom value is not enabled in partial trust. Pour plus d’informations sur les curseurs personnalisés, consultez vue d’ensemble de l’entrée.For more information on custom cursors, see Input Overview.

Informations sur les propriétés de dépendanceDependency Property Information

Champ d’identificateurIdentifier field CursorProperty
La valeur des propriétés de métadonnées trueMetadata properties set to true Aucun.None

S’applique à

Voir aussi