Condividi tramite


DrawingAttributes Classe

Definizione

Specifica l'aspetto di un oggetto Stroke.

public ref class DrawingAttributes : System::ComponentModel::INotifyPropertyChanged
public class DrawingAttributes : System.ComponentModel.INotifyPropertyChanged
type DrawingAttributes = class
    interface INotifyPropertyChanged
Public Class DrawingAttributes
Implements INotifyPropertyChanged
Ereditarietà
DrawingAttributes
Implementazioni

Esempio

Nell'esempio seguente viene illustrato come usare due DrawingAttributes oggetti per simulare l'uso di una penna e un evidenziatore nella stessa InkCanvasclasse . Nell'esempio si presuppone che l'elemento radice nel file XAML sia un DockPanel denominato root. Si presuppone inoltre che sia presente un Button oggetto denominato switchHighlighter e che l'evento Click sia connesso al gestore eventi definito in questo esempio.

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

Commenti

Utilizzare la DrawingAttributes proprietà per specificare le impostazioni, ad esempio colore, larghezza, trasparenza e forma del suggerimento dello stilo per un Strokeoggetto .

Utilizzare la DefaultDrawingAttributes proprietà per specificare gli attributi di disegno per i tratti aggiunti a un InkCanvasoggetto . Solo i tratti aggiunti dopo la DefaultDrawingAttributes modifica vengono visualizzati gli attributi aggiornati. L'aspetto dei tratti già presenti nell'oggetto InkCanvas non cambia.

Per un elenco dei valori iniziali delle proprietà di un'istanza della classe DrawingAttributes, vedere il costruttore DrawingAttributes.

Utilizzo del testo XAML

Questa classe non viene in genere usata in XAML.

Costruttori

DrawingAttributes()

Inizializza una nuova istanza della classe DrawingAttributes.

Campi

MaxHeight

Specifica il valore più grande consentito per la proprietà Height.

MaxWidth

Specifica il valore più grande consentito per la proprietà Width.

MinHeight

Specifica il valore più piccolo consentito alla proprietà Height.

MinWidth

Specifica il valore più piccolo consentito alla proprietà Width.

Proprietà

Color

Ottiene o imposta il colore di un oggetto Stroke.

FitToCurve

Ottiene o imposta un valore che indica se viene utilizzata la smussatura di Bezier per il rendering dell'oggetto Stroke.

Height

Ottiene o imposta l'altezza dello stilo utilizzato per disegnare l'oggetto Stroke.

IgnorePressure

Ottiene o imposta un valore che indica se lo spessore di un oggetto Stroke, sottoposto a rendering, viene o meno modificato in base alla quantità di pressione applicata.

IsHighlighter

Ottiene o imposta un valore che indica se l'oggetto Stroke assomigli o meno a un evidenziatore.

StylusTip

Ottiene o imposta la forma dello stilo utilizzato per disegnare l'oggetto Stroke.

StylusTipTransform

Ottiene o imposta l'oggetto Matrix che specifica la trasformazione da eseguire sulla punta dello stilo.

Width

Ottiene o imposta la larghezza dello stilo utilizzato per disegnare l'oggetto Stroke.

Metodi

AddPropertyData(Guid, Object)

Aggiunge una proprietà personalizzata all'oggetto DrawingAttributes.

Clone()

Copia l'oggetto DrawingAttributes.

ContainsPropertyData(Guid)

Restituisce un valore che indica se l'identificatore di dati della proprietà specificato si trovi o meno nell'oggetto DrawingAttributes.

Equals(Object)

Determina se l'oggetto DrawingAttributes specificato equivale all'oggetto DrawingAttributes corrente.

GetHashCode()

Svolge una funzione hash per un tipo particolare.

GetPropertyData(Guid)

Ottiene il valore della proprietà personalizzata associata all'oggetto Guid specificato.

GetPropertyDataIds()

Restituisce i GUID di qualsiasi proprietà personalizzata associata all'oggetto StrokeCollection.

GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
OnAttributeChanged(PropertyDataChangedEventArgs)

Genera l'evento AttributeChanged.

OnPropertyChanged(PropertyChangedEventArgs)

Si verifica quando viene modificata una proprietà DrawingAttributes.

OnPropertyDataChanged(PropertyDataChangedEventArgs)

Genera l'evento PropertyDataChanged.

RemovePropertyData(Guid)

Rimuove la proprietà personalizzata associata all'oggetto Guid specificato.

ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Operatori

Equality(DrawingAttributes, DrawingAttributes)

Determina se gli oggetti DrawingAttributes specificati sono uguali.

Inequality(DrawingAttributes, DrawingAttributes)

Determina se gli oggetti DrawingAttributes specificati non sono uguali.

Eventi

AttributeChanged

Si verifica quando viene modificata una proprietà nell'oggetto DrawingAttributes.

PropertyDataChanged

Si verifica quando i dati della proprietà vengono aggiunti o rimossi da StrokeCollection.

Implementazioni dell'interfaccia esplicita

INotifyPropertyChanged.PropertyChanged

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Si verifica quando il valore di una qualsiasi proprietà di DrawingAttributes è cambiato.

Si applica a