私はいくつかの入力変数(オブジェクトとTextBox)を持つコンバータを持っていて、TextBox.Text
Stringプロパティを返します。値コンバーター - ConvertBack()メソッドのConvert()変数にアクセスしますか?
私が遭遇している問題は、ConvertBack()
私のコンバータの方法です。私は取得したすべてが文字列(テキストボックスのテキスト)なので、オブジェクトに更新をリンクする方法はありません。 Convert()
変数の一部に(すべてではないにしても)アクセスできる方法はありますか?または少なくともどのテキストボックスがConvertBack()
と呼んでいるか知っていますか?ここで
は私のItemsControlコード:
<ItemsControl x:Name="ItemsControlGrid" ItemsSource="{Binding Path=ProjectOrganLocation.LesionTypes, Source={StaticResource Locator}}" >
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal" />
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<TextBox Width="75" TextAlignment="Center" >
<TextBox.Text>
<MultiBinding Converter="{StaticResource LesionTypeConverter}" >
<Binding RelativeSource="{RelativeSource AncestorType={x:Type TreeViewItem}}" Path="DataContext.OrganLocation"/>
<Binding RelativeSource="{RelativeSource Self}" Path="." />
</MultiBinding>
</TextBox.Text>
</TextBox>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
そして、ここでは私のコンバータからの抜粋です:
List<CategoryCode> Lesions = organ.getLesionTypes;
if (organ.OrganDisplayName == organ.CurrentOrgan)
organ.Count++;
else
{
organ.Count = 0;
organ.CurrentOrgan = organ.OrganDisplayName;
}
return organ.Labels[organ.Count].LabelPrefix;
私は 'getLesionTypes'というメソッドを実装する必要がなかったことを嬉しく思っています。 –