解決策を数時間検索した後、助けが必要です。
メイン ウィンドウと、RibbonWindow クラスを使用する 2 番目のウィンドウを備えた WPF アプリケーションがあります。問題は、2 番目のウィンドウから MainWindow のコントロール (データグリッド) にアクセスできないことです。2 番目のウィンドウは (クラス内で) CanSubMessages と呼ばれます。MainWindow は RibbonWindow から継承し、CanSubMessages は Window から継承します。
私が達成しようとしているのは、CanSubMessages ウィンドウから MainWindow のデータグリッドを更新することです。シンプルですね。
CanSubMessages から次のことを行います。
Window rootWindow = Application.Current.MainWindow as Window;
rootWindow.CanDataGridMessagesCh1.Items.Refresh();
CanDataGridMessagesCh1 は MainWindow のデータグリッドです。その名前は、対応する XAML で次のように指定されます。
<DataGrid x:Name="CanDataGridMessagesCh1" AutoGenerateColumns="False" ...
このコントロールにアクセスできない理由がわかりません。これは私が得るエラーです:
'System.Windows.Window' には 'CanDataGridMessagesCh1' の定義が含まれておらず、タイプ 'System.Windows.Window' の最初の引数を受け入れる拡張メソッド 'CanDataGridMessagesCh1' が見つかりませんでした (using ディレクティブまたはアセンブリ参照がありませんか? ?)
手がかりはありますか?