0

私はこの問題を抱えています:

コンボボックスにバインドする観察可能なコレクションがあります。コレクションにアイテムが含まれている場合、すべて正常に動作し、コレクションにアイテムを追加してから、コンボボックスで彼を選択すると、選択した値はnullではありません。

エンティティを反映するコンポーネント コントロールを含むアイテム コントロールがあります。監視可能なコレクションにバインドするコンボボックスで、このエンティティをパラメーターとして選択できます。

コンテンツ コントロールに最初の新しいエンティティを追加し、コレクションが空の場合、コレクションに項目を追加します。この項目はコンボ ボックスで自動的に選択されますが、コンボ ボックスで選択された値は null です。この状況が判明しました:コンボボックスでアイテムを選択しますが、コンボボックスで選択された値はnullです。このアイテムを手動で選択すると、選択した値がこのアイテムに設定され、さらに作業が進みます。私のコードがあります:これはコレクションです

public ObservableCollection<AnyType> AnyTemplates { get; set; }

これはxamlコードのコンボボックスです:

<ComboBox Name="cmbKeyA" 
          Width="100" 
          SelectedValue="{Binding Path=KeyAName}"
          ItemsSource="{Binding Path=DataContext.KeyTemplates, RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}" 
          DisplayMemberPath="Name" 
          SelectedValuePath="Name"/>
4

1 に答える 1

0

あなたの問題を理解しているかどうかはよくわかりませんが、私が理解していることから、依存関係プロパティまたは INotifyPropertyChanged イベントを実装するプロパティのいずれかを使用して、ComboBox の SelectedItem にバインドします。次に、アイテムを ObservableCollection に追加したい場合 (選択したい場合)、それをコレクションに追加し、新しいプロパティをそれに等しく設定します。

于 2011-08-23T02:23:30.780 に答える