DrawingAttributes Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Permite especificar el aspecto de un elemento Stroke.
public ref class DrawingAttributes : System::ComponentModel::INotifyPropertyChanged
public class DrawingAttributes : System.ComponentModel.INotifyPropertyChanged
type DrawingAttributes = class
interface INotifyPropertyChanged
Public Class DrawingAttributes
Implements INotifyPropertyChanged
- Herencia
-
DrawingAttributes
- Implementaciones
Ejemplos
En el ejemplo siguiente se muestra cómo usar dos DrawingAttributes objetos para simular mediante un lápiz y un resaltador en el mismo InkCanvas. En el ejemplo se supone que el elemento raíz del archivo XAML es un DockPanel denominado root
. También supone que hay un Button llamado switchHighlighter
y que el Click evento está conectado al controlador de eventos definido en este ejemplo.
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
Comentarios
Use la DrawingAttributes propiedad para especificar valores como color, ancho, transparencia y la forma de la punta del lápiz óptico para .Stroke
Utilice la DefaultDrawingAttributes propiedad para especificar los atributos de dibujo de los trazos agregados a .InkCanvas Solo los trazos que se agregan después del DefaultDrawingAttributes cambio muestran los atributos actualizados. La apariencia de los trazos que ya están en el InkCanvas no cambia.
Para obtener una lista con los valores de propiedad iniciales de una instancia de la clase DrawingAttributes, vea el constructor DrawingAttributes.
Uso de texto XAML
Esta clase no se usa normalmente en XAML.
Constructores
DrawingAttributes() |
Inicializa una nueva instancia de la clase DrawingAttributes. |
Campos
MaxHeight |
Especifica el mayor valor permitido para la propiedad Height. |
MaxWidth |
Especifica el mayor valor permitido para la propiedad Width. |
MinHeight |
Especifica el menor valor permitido para la propiedad Height. |
MinWidth |
Especifica el menor valor permitido para la propiedad Width. |
Propiedades
Color |
Obtiene o establece el color de un objeto Stroke. |
FitToCurve |
Obtiene o establece un valor que indica si se utiliza el suavizado Bézier para representar el objeto Stroke. |
Height |
Obtiene o establece el alto del lápiz óptico utilizado para dibujar el objeto Stroke. |
IgnorePressure |
Obtiene o establece un valor que indica si el grosor de un objeto Stroke representado cambia según la presión aplicada. |
IsHighlighter |
Obtiene o establece un valor que indica si el objeto Stroke se parece a un marcador de resaltado. |
StylusTip |
Obtiene o establece la forma del lápiz óptico utilizado para dibujar el objeto Stroke. |
StylusTipTransform |
Obtiene o establece el objeto Matrix que especifica la transformación que se va a realizar en la punta del lápiz óptico. |
Width |
Obtiene o establece el ancho del lápiz óptico utilizado para dibujar el objeto Stroke. |
Métodos
AddPropertyData(Guid, Object) |
Agrega una propiedad personalizada al objeto DrawingAttributes. |
Clone() |
Copia el objeto DrawingAttributes. |
ContainsPropertyData(Guid) |
Devuelve un valor que indica si el identificador de datos de propiedad especificado está definido en el objeto DrawingAttributes. |
Equals(Object) |
Determina si el objeto DrawingAttributes especificado es igual al objeto DrawingAttributes actual. |
GetHashCode() |
Sirve como función de hash para un tipo concreto. |
GetPropertyData(Guid) |
Obtiene el valor de la propiedad personalizada asociada al Guid especificado. |
GetPropertyDataIds() |
Devuelve los GUID de todas las propiedades personalizadas asociadas a StrokeCollection. |
GetType() |
Obtiene el Type de la instancia actual. (Heredado de Object) |
MemberwiseClone() |
Crea una copia superficial del Object actual. (Heredado de Object) |
OnAttributeChanged(PropertyDataChangedEventArgs) |
Genera el evento AttributeChanged. |
OnPropertyChanged(PropertyChangedEventArgs) |
Se produce cuando cambia cualquier proiedad de DrawingAttributes. |
OnPropertyDataChanged(PropertyDataChangedEventArgs) |
Genera el evento PropertyDataChanged. |
RemovePropertyData(Guid) |
Quita la propiedad personalizada asociada al Guid especificado. |
ToString() |
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |
Operadores
Equality(DrawingAttributes, DrawingAttributes) |
Determina si los objetos DrawingAttributes especificados son iguales. |
Inequality(DrawingAttributes, DrawingAttributes) |
Determina si los objetos DrawingAttributes especificados no son iguales. |
Eventos
AttributeChanged |
Se produce cuando cambia una propiedad en el objeto DrawingAttributes. |
PropertyDataChanged |
Se produce cuando se agregan o se quitan datos de propiedad de la colección StrokeCollection. |
Implementaciones de interfaz explícitas
INotifyPropertyChanged.PropertyChanged |
Esta API admite la infraestructura de producto y no está pensada para usarse directamente en el código. Se produce cuando ha cambiado el valor de alguna propiedad de DrawingAttributes. |