實現一個轉換器(它只是一個簡單的類從IValueConverter派生並實現接口方法)
public class ChangeIsCheckedValConverter : IValueConverter
{
public object Convert(object value,
Type targetType,
object parameter,
System.Globalization.CultureInfo culture)
{
if (value != null)
{
//這裏的值是你綁定到DataContext的對象 複選框; //首先定義://根據您的寶貴 綁定到你的複選框
}
public object ConvertBack(object value,
Type targetType,
object parameter,
System.Globalization.CultureInfo culture)
{
return null;
}
You will have to add the name space of you newly implemnted converter whereever you will want to use .
然後使用該轉換器在您的複選框中的DataTemplate定義見下文返回布爾(true或false)關鍵如下:
<converters:VisibilityConverter x:Key="changeConverter" />
<CheckBox x:Name="chkRegion" Content="{Binding name}" IsChecked={Binding ,Converter={StaticResource changeConverter}}"} Click="CheckBox_Click" ></CheckBox>
如果你正在尋找這樣做,你需要DataContextChanged事件,如果你能告訴你想做什麼。 – Malcolm
我想在這個事件中實現一些邏輯,因爲我可以改變這個複選框的缺陷屬性。實際上,這個複選框被放置在Combobox的DataTemplate中。 –
那麼爲什麼不使用IValueConverter並將它綁定到數據模板中複選框的IsChecked屬性。如果你想讓我寫一段代碼的例子,可以幫助你讓我知道 – Malcolm