DrawingAttributes Classe

Définition

Spécifie l’apparence d’un Stroke.

public ref class DrawingAttributes : System::ComponentModel::INotifyPropertyChanged
public class DrawingAttributes : System.ComponentModel.INotifyPropertyChanged
type DrawingAttributes = class
    interface INotifyPropertyChanged
Public Class DrawingAttributes
Implements INotifyPropertyChanged
Héritage
DrawingAttributes
Implémente

Exemples

L’exemple suivant montre comment utiliser deux DrawingAttributes objets pour simuler à l’aide d’un stylet et d’un surligneur sur le même InkCanvas. L’exemple suppose que l’élément racine dans le fichier XAML est un DockPanel appelé root. Il suppose également qu’il existe un Button appelé switchHighlighter et que l’événement Click est connecté au gestionnaire d’événements défini dans cet exemple.

InkCanvas inkCanvas1 = new InkCanvas();
DrawingAttributes inkDA;
DrawingAttributes highlighterDA;
bool useHighlighter = false;

// Add an InkCanvas to the window, and allow the user to 
// switch between using a green pen and a purple highlighter 
// on the InkCanvas.
private void WindowLoaded(object sender, EventArgs e)
{
    inkCanvas1.Background = Brushes.DarkSlateBlue;
    inkCanvas1.DefaultDrawingAttributes.Color = Colors.SpringGreen;

    root.Children.Add(inkCanvas1);

    // Set up the DrawingAttributes for the pen.
    inkDA = new DrawingAttributes();
    inkDA.Color = Colors.SpringGreen;
    inkDA.Height = 5;
    inkDA.Width = 5;
    inkDA.FitToCurve = false;

    // Set up the DrawingAttributes for the highlighter.
    highlighterDA = new DrawingAttributes();
    highlighterDA.Color = Colors.Orchid;
    highlighterDA.IsHighlighter = true;
    highlighterDA.IgnorePressure = true;
    highlighterDA.StylusTip = StylusTip.Rectangle;
    highlighterDA.Height = 30;
    highlighterDA.Width = 10;

    inkCanvas1.DefaultDrawingAttributes = inkDA;
}

// Create a button called switchHighlighter and use 
// SwitchHighlighter_Click to handle the Click event.  
// The useHighlighter variable is a boolean that indicates
// whether the InkCanvas renders ink as a highlighter.

// Switch between using the 'pen' DrawingAttributes and the 
// 'highlighter' DrawingAttributes.
void SwitchHighlighter_Click(Object sender, RoutedEventArgs e)
{
    useHighlighter = !useHighlighter;
    
    if (useHighlighter)
    {
        switchHighlighter.Content = "Use Pen";
        inkCanvas1.DefaultDrawingAttributes = highlighterDA;
    }
    else
    {
        switchHighlighter.Content = "Use Highlighter";
        inkCanvas1.DefaultDrawingAttributes = inkDA;
    }
}
Private WithEvents inkCanvas1 As New InkCanvas()
Private inkDA As DrawingAttributes
Private highlighterDA As DrawingAttributes
Private useHighlighter As Boolean = False

' Add an InkCanvas to the window, and allow the user to 
' switch between using a green pen and a purple highlighter 
' on the InkCanvas.
Private Sub WindowLoaded(ByVal sender As Object, ByVal e As RoutedEventArgs)

    inkCanvas1.Background = Brushes.DarkSlateBlue
    inkCanvas1.DefaultDrawingAttributes.Color = Colors.SpringGreen

    ' Add the InkCanvas to the DockPanel, named root.
    root.Children.Add(inkCanvas1)

    ' Set up the DrawingAttributes for the pen.
    inkDA = New DrawingAttributes()
    With inkDA
        .Color = Colors.SpringGreen
        .Height = 5
        .Width = 5
        .FitToCurve = True
    End With

    ' Set up the DrawingAttributes for the highlighter.
    highlighterDA = New DrawingAttributes()
    With highlighterDA
        .Color = Colors.Orchid
        .IsHighlighter = True
        .IgnorePressure = True
        .StylusTip = StylusTip.Rectangle
        .Height = 30
        .Width = 10
    End With

    inkCanvas1.DefaultDrawingAttributes = inkDA

End Sub


' Create a button called switchHighlighter and use 
' SwitchHighlighter_Click to handle the Click event.  
' The useHighlighter variable is a boolean that indicates
' whether the InkCanvas renders ink as a highlighter.

' Switch between using the 'pen' DrawingAttributes and the 
' 'highlighter' DrawingAttributes when the user clicks on .
Private Sub SwitchHighlighter_Click(ByVal sender As [Object], ByVal e As RoutedEventArgs)

    useHighlighter = Not useHighlighter

    If useHighlighter Then
        switchHighlighter.Content = "Use Pen"
        inkCanvas1.DefaultDrawingAttributes = highlighterDA
    Else

        switchHighlighter.Content = "Use Highlighter"
        inkCanvas1.DefaultDrawingAttributes = inkDA
    End If

End Sub

Remarques

Utilisez la DrawingAttributes propriété pour spécifier des paramètres tels que la couleur, la largeur, la transparence et la forme de la pointe du stylet pour un Stroke.

Utilisez la DefaultDrawingAttributes propriété pour spécifier les attributs de dessin pour les traits ajoutés à un InkCanvas. Seuls les traits ajoutés après la DefaultDrawingAttributes modification montrent les attributs mis à jour. L’apparence des traits qui se trouvent déjà sur le InkCanvas ne change pas.

Pour obtenir la liste des valeurs de propriété initiales d'une instance de la classe DrawingAttributes, consultez le constructeur DrawingAttributes.

Utilisation du texte XAML

Cette classe n’est généralement pas utilisée en XAML.

Constructeurs

DrawingAttributes()

Initialise une nouvelle instance de la classe DrawingAttributes.

Champs

MaxHeight

Spécifie la plus grande valeur autorisée pour la propriété Height.

MaxWidth

Spécifie la plus grande valeur autorisée pour la propriété Width.

MinHeight

Spécifie la plus petite valeur autorisée pour la propriété Height.

MinWidth

Spécifie la plus petite valeur autorisée pour la propriété Width.

Propriétés

Color

Obtient ou définit la couleur d'un Stroke.

FitToCurve

Obtient ou définit une valeur qui indique si le lissage Bézier est utilisé pour restituer le Stroke.

Height

Obtient ou définit la hauteur du stylet utilisé pour dessiner le Stroke.

IgnorePressure

Obtient ou définit une valeur qui indique si l'épaisseur d'un Stroke rendu change selon la quantité de pression appliquée.

IsHighlighter

Obtient ou définit une valeur qui indique si le Stroke ressemble à un surligneur.

StylusTip

Obtient ou définit la forme du stylet utilisé pour dessiner le Stroke.

StylusTipTransform

Obtient ou définit le Matrix qui spécifie la transformation à exécuter sur la pointe du stylet.

Width

Obtient ou définit la largeur du stylet utilisé pour dessiner le Stroke.

Méthodes

AddPropertyData(Guid, Object)

Ajoute une propriété personnalisée à l'objet DrawingAttributes.

Clone()

Copie l'objet DrawingAttributes.

ContainsPropertyData(Guid)

Retourne une valeur qui indique si l'identificateur des données de la propriété spécifié est dans l'objet DrawingAttributes.

Equals(Object)

Détermine si l'objet DrawingAttributes spécifié est égal à l'objet DrawingAttributes en cours.

GetHashCode()

Sert de fonction de hachage pour un type particulier.

GetPropertyData(Guid)

Obtient la valeur de la propriété personnalisée associée au Guid spécifié.

GetPropertyDataIds()

Retourne les GUID de toutes les propriétés personnalisées associées à StrokeCollection.

GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
OnAttributeChanged(PropertyDataChangedEventArgs)

Déclenche l’événement AttributeChanged.

OnPropertyChanged(PropertyChangedEventArgs)

Se produit lorsqu'une propriété DrawingAttributes change.

OnPropertyDataChanged(PropertyDataChangedEventArgs)

Déclenche l’événement PropertyDataChanged.

RemovePropertyData(Guid)

Supprime la propriété personnalisée associée au Guidspécifié.

ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

Opérateurs

Equality(DrawingAttributes, DrawingAttributes)

Détermine si les objets DrawingAttributes spécifiés sont égaux.

Inequality(DrawingAttributes, DrawingAttributes)

Détermine si les objets DrawingAttributes spécifiés ne sont pas identiques.

Événements

AttributeChanged

Se produit lorsqu'une propriété dans l'objet DrawingAttributes change.

PropertyDataChanged

Se produit lorsque des données de propriété sont ajoutées ou supprimées de StrokeCollection.

Implémentations d’interfaces explicites

INotifyPropertyChanged.PropertyChanged

Cette API prend en charge l'infrastructure du produit et n'est pas destinée à être utilisée directement à partir de votre code.

Se produit lors de la modification de la valeur d'une propriété DrawingAttributes.

S’applique à