これは愚かな質問か間違った単語を検索しました:
私はComboBoxを持っており、同等の部分を示すカスタムコンバーターを使ってダブルを表示します。
DataTemplateでは、Double型のデータ型を指定する必要がありますが、それを指定する方法はわかりません。私はそうする簡単な方法があると確信しています!ウィンドウにシステムの名前空間を追加するシステムデータ型のDataTemplateでバインドする
は、単にデータ型にダブルまたはSystem.Doubleを入力すると、どちらかない
<Window ... xmlns:sys="clr-namespace:System" ...>
をコンパイルしません。
単純なDouble-TypeのViewModelを定義することは、どちらの解決策にもなり得ません。
これは、これまでの私のコードです:
<ComboBox ItemsSource="{Binding Gains}" SelectedItem="{Binding Gain, Mode=TwoWay}">
<ComboBox.Resources>
<DataTemplate DataType=" ??????? fract">
<TextBlock Text="{Binding ., Converter=fractConverter}"/>
</DataTemplate>
</ComboBox.Resources>
</ComboBox>
完全なソリューション:作品:SYSとしてSystem名前空間を使用して
!
利益一覧<はゲインダブル>
あるコンボボックスは、このように動作します
ダブル
<Window ... xmlns:sys="clr-namespace:System;assembly=mscorlib" ...>
です:このように <ComboBox ItemsSource="{Binding Gains}" SelectedItem="{Binding Gain, Mode=TwoWay}">
<ComboBox.Resources>
<DataTemplate DataType="{x:Type sys:Double}">
<TextBlock Text="{Binding ., Converter={StaticResource realConverter}}"/>
</DataTemplate>
</ComboBox.Resources>
</ComboBox>
'sys'エイリアスは、デフォルトでは追加されないため、spearate xmlnsとして追加する必要があります。 –
hm、 '; assembly = mscorlib'を名前空間定義に追加すると少なくともコンパイルされますが、 'lala'というTextblockを含んでいてもdatatemplateはまだ動作しません。それでもToStringメソッドを使用して番号を表示します。 – JCH2k
ありがとう、今すぐ作品!私はタイプx:タイプに愚かだった! – JCH2k