独自の ComboBoxItem を作成します。ここでコードを簡略化しました。ComboBoxItem には CheckBox が含まれています。
ComboBoxItem コントロール xaml:
<ComboBoxItem x:Class="WpfApplication1.MyCombobox"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Height="50"
Width="200">
<!-- ... -->
<StackPanel>
<CheckBox IsChecked="{Binding Path=IsCheckboxChecked}" IsEnabled="{Binding Path=IsCheckboxEnabled}">
<CheckBox.LayoutTransform>
<ScaleTransform ScaleX="1" ScaleY="1" />
</CheckBox.LayoutTransform>
</CheckBox>
<!-- ... -->
</StackPanel>
</ComboBoxItem>
ComboBoxItem コントロール c# (分離コード)
public partial class MyCombobox
{
public MyCombobox()
{
InitializeComponent();
DataContext = this;
//Defaults
IsCheckboxChecked = false;
IsCheckboxEnabled = true;
//...
}
//...
public string Text { get; set; }
public bool IsCheckboxChecked { get; set; }
public bool IsCheckboxEnabled { get; set; }
//...
}
そして私はそれを含めます:
<WpfApplication1:MyCombobox IsCheckboxChecked="{Binding Path=IsMyCheckBoxChecked, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" IsCheckboxEnabled="{Binding Path=IsMyCheckBoxEnabled, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}" Text="Write your Text here" />
アプリケーションを実行すると、次のエラーが発生します。
致命的なエラーが発生しました: タイプ 'MyCombobox' の 'IsCheckboxChecked' プロパティに 'Binding' を設定できません。「バインディング」は、DependencyObject の Dependency プロパティでのみ設定できます
私は何を間違えますか?