Share via


DrawingAttributes Kelas

Definisi

Menentukan tampilan Stroke.

public ref class DrawingAttributes : System::ComponentModel::INotifyPropertyChanged
public class DrawingAttributes : System.ComponentModel.INotifyPropertyChanged
type DrawingAttributes = class
    interface INotifyPropertyChanged
Public Class DrawingAttributes
Implements INotifyPropertyChanged
Warisan
DrawingAttributes
Penerapan

Contoh

Contoh berikut menunjukkan cara menggunakan dua DrawingAttributes objek untuk mensimulasikan menggunakan pena dan penyorot pada yang sama InkCanvas. Contoh mengasumsikan elemen akar dalam file XAML disebut DockPanelroot. Ini juga mengasumsikan bahwa ada yang Button dipanggil switchHighlighter dan bahwa Click peristiwa terhubung ke penanganan aktivitas yang ditentukan dalam contoh ini.

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

Keterangan

DrawingAttributes Gunakan properti untuk menentukan pengaturan seperti warna, lebar, transparansi, dan bentuk tip stylus untuk Stroke.

DefaultDrawingAttributes Gunakan properti untuk menentukan atribut gambar untuk goresan yang InkCanvasditambahkan ke . Hanya goresan yang ditambahkan setelah DefaultDrawingAttributes perubahan yang sedang berlangsung yang menunjukkan atribut yang diperbarui. Munculnya goresan yang sudah ada di InkCanvas tidak berubah.

Untuk daftar nilai properti awal untuk instans DrawingAttributes kelas, lihat DrawingAttributes konstruktor.

Penggunaan Teks XAML

Kelas ini biasanya tidak digunakan dalam XAML.

Konstruktor

DrawingAttributes()

Menginisialisasi instans baru kelas DrawingAttributes.

Bidang

MaxHeight

Menentukan nilai terbesar yang diizinkan untuk Height properti.

MaxWidth

Menentukan nilai terbesar yang diizinkan untuk Width properti.

MinHeight

Menentukan nilai terkecil yang diizinkan untuk Height properti .

MinWidth

Menentukan nilai terkecil yang diizinkan untuk Width properti .

Properti

Color

Mendapatkan atau mengatur warna Stroke.

FitToCurve

Mendapatkan atau menetapkan nilai yang menunjukkan apakah smoothing Bezier digunakan untuk merender Stroke.

Height

Mendapatkan atau mengatur tinggi stylus yang digunakan untuk menggambar Stroke.

IgnorePressure

Mendapatkan atau menetapkan nilai yang menunjukkan apakah ketebalan perubahan yang dirender Stroke sesuai dengan jumlah tekanan yang diterapkan.

IsHighlighter

Mendapatkan atau menetapkan nilai yang menunjukkan apakah Stroke terlihat seperti penyorot.

StylusTip

Mendapatkan atau mengatur bentuk stylus yang digunakan untuk menggambar Stroke.

StylusTipTransform

Mendapatkan atau mengatur Matrix yang menentukan transformasi yang akan dilakukan pada tip stylus.

Width

Mendapatkan atau mengatur lebar stylus yang digunakan untuk menggambar Stroke.

Metode

AddPropertyData(Guid, Object)

Menambahkan properti kustom ke DrawingAttributes objek .

Clone()

DrawingAttributes Menyalin objek.

ContainsPropertyData(Guid)

Mengembalikan nilai yang menunjukkan apakah pengidentifikasi data properti yang ditentukan ada di DrawingAttributes objek .

Equals(Object)

Menentukan apakah objek yang ditentukan DrawingAttributes sama dengan objek saat ini DrawingAttributes .

GetHashCode()

Berfungsi sebagai fungsi hash untuk jenis tertentu.

GetPropertyData(Guid)

Mendapatkan nilai properti kustom yang terkait dengan yang ditentukan Guid.

GetPropertyDataIds()

Mengembalikan GUID dari properti kustom apa pun yang StrokeCollectionterkait dengan .

GetType()

Mendapatkan instans Type saat ini.

(Diperoleh dari Object)
MemberwiseClone()

Membuat salinan dangkal dari yang saat ini Object.

(Diperoleh dari Object)
OnAttributeChanged(PropertyDataChangedEventArgs)

Memunculkan kejadian AttributeChanged.

OnPropertyChanged(PropertyChangedEventArgs)

Terjadi ketika ada DrawingAttributes properti yang berubah.

OnPropertyDataChanged(PropertyDataChangedEventArgs)

Memunculkan kejadian PropertyDataChanged.

RemovePropertyData(Guid)

Menghapus properti kustom yang terkait dengan yang ditentukan Guid.

ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Operator

Equality(DrawingAttributes, DrawingAttributes)

Menentukan apakah objek yang ditentukan DrawingAttributes sama.

Inequality(DrawingAttributes, DrawingAttributes)

Menentukan apakah objek yang ditentukan DrawingAttributes tidak sama.

Acara

AttributeChanged

Terjadi ketika properti dalam DrawingAttributes objek berubah.

PropertyDataChanged

Terjadi ketika data properti ditambahkan atau dihapus dari StrokeCollection.

Implementasi Antarmuka Eksplisit

INotifyPropertyChanged.PropertyChanged

API ini mendukung infrastruktur produk dan tidak dimaksudkan untuk digunakan langsung dari kode Anda.

Terjadi ketika nilai properti apa pun DrawingAttributes telah berubah.

Berlaku untuk