Freigeben über


DrawingAttributes.ContainsPropertyData(Guid) Methode

Definition

Gibt einen Wert zurück, der angibt, ob der angegebene Eigenschaftendatenbezeichner im DrawingAttributes-Objekt enthalten ist.

public:
 bool ContainsPropertyData(Guid propertyDataId);
public bool ContainsPropertyData (Guid propertyDataId);
member this.ContainsPropertyData : Guid -> bool
Public Function ContainsPropertyData (propertyDataId As Guid) As Boolean

Parameter

propertyDataId
Guid

Die Guid, die im DrawingAttributes-Objekt gesucht werden soll.

Gibt zurück

Boolean

true, wenn der angegebene Eigenschaftendatenbezeichner im DrawingAttributes-Objekt enthalten ist, andernfalls false.

Beispiele

Im folgenden Beispiel wird veranschaulicht, wie Sie eine benutzerdefinierte Eigenschaft aus dem DrawingAttributes Objekt hinzufügen und abrufen. Im Beispiel wird eine Eigenschaft hinzugefügt, die angibt, ob es sich bei dem DrawingAttributes Objekt um einen Stift oder einen Textmarker handelt. Der ChangeColors_Click Ereignishandler ändert alle Striche, die mit einem DrawingAttributes Aufruf inkDA einer neuen Farbe versehen InkCanvas wurden. In diesem Beispiel wird davon ausgegangen, dass es einen InkCanvas benannten inkCanvas1Namen gibt, und es gibt zwei DrawingAttributes Objekte mit dem Namen inkDA", und highlighterDA.

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

Gilt für