2016-05-04 3 views
0

Wir haben ein WPF-CustomControl erstellt, das von der TextBox erbt und eine neue DependencyProperty "TableName" hinzugefügt, sodass wir dort den Namen der DataTable festlegen können, an die das Steuerelement gebunden ist. Das Steuerelement wird zur Laufzeit generiert und die Eigenschaft TableName p.e. auf "Tabelle1" setzen. Dann serialisiert werden wir das Panel, das die Kontrollen (wie unser Custom) in eine XAML-Datei enthält, wie in diesem Artikel von Codeproject, weil wir die Bindungen serialisieren möchten:Eigenschaft von WPF CustomControl wird von XamlWriter nicht serialisiert

XamlWriter-and-Bindings-Serialization

Leider - anstelle von Eigenschaften wie Breite - unsere neue DependencyProperty ist nicht serialisiert.

Gibt es eine Möglichkeit, den XamlWriter zu zwingen, die Eigenschaft zu serialisieren?

Vielen Dank im Voraus!

Dies ist die Definition der Eigenschaft in der Custom "CustomTextBox" genannt:

public static readonly DependencyProperty TableNameProperty = DependencyProperty.Register("TableName", typeof(string), typeof(CustomTextBox)); 

public string TableName { get; set; } 

Es ist Stil im generic.xaml:

<Style TargetType="{x:Type local:CustomTextBox}" BasedOn="{StaticResource {x:Type TextBox}}"> 
</Style> 

Antwort

0

Sie eine CLR-Eigenschaft zur Verfügung gestellt haben, aber es doesn tu nichts. Sie müssen es mit Ihrer DependencyProperty verknüpfen:

public string TableName 
{ 
    get { return (string)GetValue(TableNameProperty); } 
    set { SetValue(TableNameProperty, value); } 
} 
+0

Vielen Dank! Das ist es. :) –

Verwandte Themen