DrawingAttributes.AddPropertyData(Guid, Object) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Fügt dem DrawingAttributes-Objekt eine benutzerdefinierte Eigenschaft hinzu.
public:
void AddPropertyData(Guid propertyDataId, System::Object ^ propertyData);
public void AddPropertyData (Guid propertyDataId, object propertyData);
member this.AddPropertyData : Guid * obj -> unit
Public Sub AddPropertyData (propertyDataId As Guid, propertyData As Object)
Parameter
- propertyData
- Object
Der Wert der benutzerdefinierten Eigenschaft.
propertyData
muss vom Typ Char, Byte, Int16, UInt16, Int32, UInt32, Int64, UInt64, Single, Double, DateTime, Boolean, String, Decimal oder ein Array dieser Datentypen sein. Es darf jedoch kein Array vom Typ String sein.
Ausnahmen
propertyData
ist null
.
propertyDataId
ist eine leere Guid.
- oder -
propertyData
ist keiner der im Abschnitt Parameters
aufgelisteten zulässigen Datentypen.
Beispiele
Im folgenden Beispiel wird veranschaulicht, wie eine benutzerdefinierte Eigenschaft hinzugefügt und aus dem DrawingAttributes -Objekt abgerufen wird. Im Beispiel wird eine Eigenschaft hinzugefügt, die angibt, ob das DrawingAttributes Objekt ein Stift oder ein Textmarker ist. Der Code im ChangeColors_Click
Ereignishandler rendert eine neue Farbe für Striche auf der , die InkCanvas das DrawingAttributes -Objekt inkDA
verwenden. In diesem Beispiel wird davon ausgegangen, dass ein InkCanvas -Objekt mit dem Namen inkCanvas1
und zwei -Objekte mit dem Namen inkDA
und highlighterDA
vorhanden sindDrawingAttributes.
Guid purposeGuid = new Guid("12345678-9012-3456-7890-123456789012");
string penValue = "pen";
string highlighterValue = "highlighter";
// Add a property to each DrawingAttributes object to
// specify its use.
private void AssignDrawingAttributesInstrument()
{
inkDA.AddPropertyData(purposeGuid, penValue);
highlighterDA.AddPropertyData(purposeGuid, highlighterValue);
}
// Change the color of the ink that on the InkCanvas that used the pen.
void ChangeColors_Click(Object sender, RoutedEventArgs e)
{
foreach (Stroke s in inkCanvas1.Strokes)
{
if (s.DrawingAttributes.ContainsPropertyData(purposeGuid))
{
object data = s.DrawingAttributes.GetPropertyData(purposeGuid);
if ((data is string) && ((string)data == penValue))
{
s.DrawingAttributes.Color = Colors.Black;
}
}
}
}
Private purposeGuid As New Guid("12345678-9012-3456-7890-123456789012")
Private penValue As String = "pen"
Private highlighterValue As String = "highlighter"
' Add a property to each DrawingAttributes object to
' specify its use.
Private Sub AssignDrawingAttributesInstrument()
inkDA.AddPropertyData(purposeGuid, penValue)
highlighterDA.AddPropertyData(purposeGuid, highlighterValue)
End Sub
' Change the color of the ink that on the InkCanvas that used the pen.
Private Sub ChangeColors_Click(ByVal sender As [Object], _
ByVal e As RoutedEventArgs)
Dim s As Stroke
For Each s In inkCanvas1.Strokes
If s.DrawingAttributes.ContainsPropertyData(purposeGuid) Then
Dim data As Object = s.DrawingAttributes.GetPropertyData(purposeGuid)
If TypeOf data Is String AndAlso CStr(data) = penValue Then
s.DrawingAttributes.Color = Colors.Black
End If
End If
Next s
End Sub
Hinweise
Mit AddPropertyData der -Methode können Sie einem DrawingAttributes -Objekt benutzerdefinierte Eigenschaften hinzufügen. Dies ist nützlich, wenn Sie Ihre eigenen Striche rendern und zusätzliche Informationen bereitstellen möchten.