MainViewModel にバインドされた MainWindow があります。MainWindow内に、このようにユーザーコントロールを定義しています
<vm:StatPanel DockPanel.Dock="Right" DataContext="{Binding Source={StaticResource viewModel}}" Loaded="StatPanel_Loaded" />
そのユーザーコントロール内に、ボタン付きのデータグリッドがあります。目標は、ボタンがクリックされて MainWindow xaml のデータグリッドが変更されたときです。これは私のユーザーコントロールのデータグリッドがどのように見えるかです
<Button Content="{Binding Path=sector}" Command="{Binding Path=filterGridCommand}"></Button>
アプリケーションを実行すると、次のエラーが表示されます。
System.Windows.Data Error: 40 : BindingExpression path error: 'filterGridCommand' property not found on 'object' ''mdSectorDetail' (HashCode=42410114)'. BindingExpression:Path=filterGridCommand; DataItem='mdSectorDetail' (HashCode=42410114); target element is 'Button' (Name=''); target property is 'Command' (type 'ICommand')
MainViewModel にあるコマンド リレーを使用しています。私の問題は、そのmainViewModelを参照する方法がわからないことです。次のような提案された解決策をいくつか試しました
CommandParameter="{Binding RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type }}}"
どんな提案も役に立ちます。ありがとうございました。