2009-08-05 11 views
0

をバインド状況です:WPFWPFは、ここで質問

を使用して

私は窓ののDataContextに設定されたオブジェクトを持っています。このウィンドウのリストビューは、DataContext(Users)のプロパティに対応するユーザーのリストを表示するためにバインドされています。

Aユーザーを選択するたびに、このユーザーにCurrentDisplayedUserを選択したオブジェクトに設定します。

このユーザーがアラートを表示するはずの別のリストボックスがあります。これはUser.Alertsからアクセスできます。

私の問題は、CurrentDisplayedUserプロパティを更新するたびにCurrentDisplayedUser.Alertsにバインドされたリストビューが更新されないということです。

ありがとうございます!私は適切な情報を提供したことを願っています。

答えて

1

中間の "CurrentDisplayedUser"プロパティに頼るのではなく、要素バインディングを使用して2つのリストを直接接続しようとしましたか?

<Window ...> 
    <StackPanel> 
     <ListView x:Name="userList" ItemsSource="{Binding Users}"> 
      ... 
     </ListView> 

     <!-- display selected user here --> 
     <ContentControl Content="{Binding SelectedItem,ElementName=userList /> 

     <ListView ItemsSource="{Binding SelectedItem.Alerts,ElementName=userList> 
      ... 
     </ListView> 
    </StackPanel> 
</Window> 
+0

これはありがとうございます!しかし、私の意図は、アラートリストビューをuserListのダブルクリックイベントに基づいて変更させることでした。 – Joe

+0

その後、いくつかのコードを参照する必要があります。 "CurrentSelectedUser"プロパティは依存プロパティであるか、または基礎をなすオブジェクトはINotifyPropertyChangedを実装していますか? –

0

あなたのユーザーリストにObservableCollectionを使用しましたか?

+0

彼はユーザーのリストを変更しているかどうかについては言及していません。その場合ObservableCollectionは役に立ちません。 –

+0

ありがとうございます。 ObservableCollectionから継承するようにユーザーコレクションを更新しています。これは、ユーザーを追加するための機能を追加しているという点に着目すると良いことです。 – Joe

関連する問題