dredav
Hallo,
ich erstelle ein Control welches ein ComboBoxItem beinhaltet. Das Control selber beinhaltet hier im Beispiel jetzt nur eine CheckBox, welche via Binding checked und enabled ist. Der Sinn dahinter ist es, ein Complexes ComboBoxItem, welches öfters verwendet wird, so einfach wie möglich zu erstellen.
Control.xaml
Control.xaml.cs
Aufruf des Controls
Nur leider geht das nicht, da in der CodeBehind Datei die Eigenschaften Text, IsCheckboxChecked, IsCheckboxEnabled ja DependencyPropertys sein müssen, das würde dann so aussehen:
dazu müsste die Klasse MyCombobox von DependencyObject erben. Was aber nicht geht da sie ja schon (über den xaml code) von ComboBoxItem erbt.
Wie kann ich das ganze anders lösen? Wie würdet ihr das machen?
Danke und Grüße
David
ich erstelle ein Control welches ein ComboBoxItem beinhaltet. Das Control selber beinhaltet hier im Beispiel jetzt nur eine CheckBox, welche via Binding checked und enabled ist. Der Sinn dahinter ist es, ein Complexes ComboBoxItem, welches öfters verwendet wird, so einfach wie möglich zu erstellen.
Control.xaml
XML-Code: |
<ComboBoxItem x:Class="WpfApplication1.MyCombobox"
|
Control.xaml.cs
C#-Code: |
public partial class MyCombobox
|
Aufruf des Controls
XML-Code: |
<WpfApplication1:MyCombobox IsCheckboxChecked="{Binding Path=IsMyCheckBoxChecked, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" IsCheckboxEnabled="{Binding Path=IsMyCheckBoxEnabled, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}" Text="Write your Text here" />
|
Nur leider geht das nicht, da in der CodeBehind Datei die Eigenschaften Text, IsCheckboxChecked, IsCheckboxEnabled ja DependencyPropertys sein müssen, das würde dann so aussehen:
C#-Code: |
public static readonly DependencyProperty IsCheckboxCheckedProperty = DependencyProperty.Register("IsCheckboxChecked", typeof(bool), typeof(ComboBoxCheckboxItem));
|
dazu müsste die Klasse MyCombobox von DependencyObject erben. Was aber nicht geht da sie ja schon (über den xaml code) von ComboBoxItem erbt.
Wie kann ich das ganze anders lösen? Wie würdet ihr das machen?
Danke und Grüße
David
