メンバーで満たされた DataGrid を持つ UserControl があります。DataGrid.ItemsSource は、モデルの ObservableCollection にバインドされています。DataGrid.SelectedItem は、モデルの SelectedMember フィールドにバインドされます。SelectedMember._set は NotifyPropertyChanged を呼び出し、イベントは公開された DependencyProperty の SetValue() を呼び出します。
この UserControl はページ上にあります。そのページにもビューモデルがあります。UserControl.CurrentMember を viewmodel.SelectedMember にバインドしようとしていますが、変更されていません。CurrentMember.MemberName をテキスト ボックスにバインドすると、ボックスにメンバー名が表示されるので、UserControl が DependencyProperty を正しく公開しているように見えます。しかし、モデルにバインドしても更新されません。
クロスバインディングが見つかりません。TextBox へのバインドは正常に機能します。ページ モデルのフィールドは新しいため、何もバインドされていません。
何が問題なのですか?ページ モデルのフィールドは DependencyProperty である必要がありますか? その場合、コンパイラはエラーを出します。
コードサンプルを入手してみますが、非常に根深いので、数行のコードを投稿することはできません.
トム P.