2017-07-05 2 views
0

TableViewに使用しています。最初の項目のテキストをデフォルト値として表示したい場合は、SelectionIndex=0を追加しようとしましたが、デフォルト値は空です。TableViewのWPF Comboboxは、最初の項目をデフォルトとして表示できません

Comboxbox auto select first item when data is available

私のコンボボックスがTableViewに属しているような他の問題とは異なり、各項目はコンボボックスを持っている(実際には、各グリッド項目は、コンボボックスの多くの種類を持っている)ので、私はいくつかの方法は、それを1つずつ処理する必要が使用することはできません一つ。

私のコードは以下の通りである、とitemsource 都市は辞書である、と私は(キーではない)、その値を表示するためにDisplayMemberPath="Value" SelectedValuePath="Value"を使用します。

<dxg:GridColumn FieldName="FloorSetUp" Header="Type" MinWidth="20" HorizontalHeaderContentAlignment="Center" VisibleIndex="1"> 
    <dxg:GridColumn.CellTemplate> 
     <DataTemplate> 
      <ComboBox DisplayMemberPath="Value" SelectedValuePath="Value" ItemsSource="{Binding Data.Cities}" SelectedIndex="0"/> 
     </DataTemplate> 
    </dxg:GridColumn.CellTemplate> 
</dxg:GridColumn> 

誰もがこの問題を解決することができますおかげで非常に多くの?!

+0

あなたは 'SelectedValue'または' SelectedIndex'を何かにバインドしていません。最初の項目を選択するだけの場合は、 'SelectedIndex =" 0 "'を実行する必要があります。 –

+0

@EdPlunkett、申し訳ありませんが、不完全なコードを貼り付け、 'SelectedIndex =" 0 "'を追加しますが、機能しません。 – starkshang

+0

次に、SelectedValueを、選択する項目のValueと等しいVMプロパティにバインドします。 –

答えて

0

FloorSetUpもKeyValuePair<T,R>ですか?

しない場合は、あなたの問題です。

ComboBoxは、アイテムのソースと選択したアイテムのプロパティの両方で同じタイプのデータを処理する必要があります。

+0

'FloorSetUp'はDictionary タイプですが、動作しますか? – starkshang

+0

辞書の項目はKeyValuePair なので – Mishka

+0

です。私のコードはあなたの提案を満たしていますが、結果は私が言ったように、デフォルト値は空です。 – starkshang

関連する問題