1

xamlで使用したいカスタムコンバーターがあります。コンバーターは、値が0に等しい場合はAdminを配置し、2に等しい場合はCashierを配置します。

とにかくこれが私が探しているものです。

 <ComboBoxItem Content="{Binding 'I want to place the value in here', Converter={StaticResource MyConverter}}"></ComboBoxItem>      

そのため、私が配置した場合:

 <ComboBoxItem Content="{Binding '0', Converter={StaticResource MyConverter}}"></ComboBoxItem>  

コンバーターに値0が渡されることを期待しています。どうすればこれを達成できますか?


私はごまかして次のようなことをすることができることを知っています:

 <Label  Name="L1" Visiblity="hidden">0</Label>
 <ComboBoxItem Content="{Binding, ElementName='L1', Path='Content' Converter={StaticResource MyConverter}}"></ComboBoxItem> 

しかし、それは冗長です

4

2 に答える 2

2

とにかく、実装はハックのように見えるので、別のハックを使用できます。

<ComboBoxItem Tag="0" 
              Content="{Binding RelativeSource={RelativeSource Self}, 
                                Path=Tag, 
                                Converter={StaticResource MyConverter}}">
于 2012-04-17T18:13:18.213 に答える
0

あなたが私の最初の回答をすでに受け入れていることは知っていますが、おそらくより有効な別の方法があります。

<Control ...
         xmlns:sys="clr-namespace:System;assembly=mscorlib"

    <Control.Resources>
        <sys:Int32 x:Key="Zero">0</sys:Int32 >
    </Control.Resources>

    <ComboBoxItem Content="{Binding Source={StaticResource Zero}, 
                                    Converter={StaticResource MyConverter}}">

</Control>
于 2012-04-18T20:23:37.310 に答える