我寫了一個MultiValueConverter,它檢查給定列表是否包含給定值,如果有,則返回true。我用它來綁定到自定義複選框列表。現在我想編寫ConvertBack方法,這樣如果複選框被選中,原始值將被髮送到模型。有沒有辦法在ConvertBack方法中訪問值?WPF:有沒有辦法在MultiValueConverter的ConvertBack方法中獲取原始值?
XAML:
<ListBox.ItemTemplate>
<HierarchicalDataTemplate>
<CheckBox Content="{Binding Path=Description}">
<CheckBox.IsChecked>
<MultiBinding Converter="{x:Static Classes:ListContainsMultiConverter.Instance}">
<Binding Path="Id" />
<Binding Path="DataContext.ContactTypes" RelativeSource="{RelativeSource AncestorType={x:Type Window}}" />
</MultiBinding>
</CheckBox.IsChecked>
</CheckBox>
</HierarchicalDataTemplate>
</ListBox.ItemTemplate>
我得到時,我結合正確的結果,但有沒有辦法轉換回時,爲了獲得綁定ID?我想實現的是,如果複選框未被選中,該值將從列表中刪除,如果選中,該值將被添加到列表中。
我有一個類似的問題,其中多重綁定中的一個綁定是一個包含文本字段的對象列表的對象。多重綁定基於其他綁定值綁定到其中一個文本框。我需要文本框來更改convertBack上的對象的文本,但我擁有的僅僅是新的值,而不是對象的文本需要更改 – JoeSharp 2010-05-20 19:29:35