DrawingAttributes.AddPropertyData(Guid, Object) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Aggiunge una proprietà personalizzata all'oggetto DrawingAttributes.
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)
Parametri
- propertyData
- Object
Valore della proprietà personalizzata.
propertyData
deve essere di tipo Char, Byte, Int16, UInt16, Int32, UInt32, Int64, UInt64, Single, Double, DateTime, Boolean, String, Decimal o una matrice di questi tipi di dati, ma non può essere una matrice di tipo String.
Eccezioni
propertyData
è null
.
L'oggetto propertyDataId
è un oggetto Guid vuoto.
-oppure-
L'oggetto propertyData
non è uno dei tipi di dati consentiti, elencati nella sezione Parameters
.
Esempio
Nell'esempio seguente viene illustrato come aggiungere e recuperare una proprietà personalizzata dall'oggetto DrawingAttributes . Nell'esempio viene aggiunta una proprietà che indica se l'oggetto DrawingAttributes è una penna o un evidenziatore. Il codice nel ChangeColors_Click
gestore eventi esegue il rendering di un nuovo colore per i tratti sull'oggetto InkCanvas che utilizzano l'oggetto DrawingAttributes . inkDA
In questo esempio si presuppone che sia presente un InkCanvas oggetto denominato inkCanvas1
e che siano presenti due DrawingAttributes oggetti denominati inkDA
e 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
Commenti
Il AddPropertyData metodo consente di aggiungere proprietà personalizzate a un DrawingAttributes oggetto. Questo è utile quando si esegue il rendering dei propri tratti e si vogliono fornire informazioni aggiuntive.