从WPF中的窗口访问调用页面控件

时间:2011-05-24 05:17:03

标签: wpf

我创建了WPF浏览器应用程序并添加了Page和一个Window。单击页面中的按钮,它将打开一个窗口,其中包含DataGrid中的详细信息列表。我想将Window的DataGrid中的值赋给页面控件。

这些值未分配给Page控件,后面的窗口代码中包含以下代码(Window1.xaml.cs)

private void DataGrid1_MouseDoubleClick(object sender, MouseButtonEventArgs e) 
{ 
 Page1 page = new Page1(); 
 page.txtName.Text = "GridValue1";
 this.Close(); 
}

当我使用DoubleClick时,应将Wiindow1 Datagrid中的值分配给Page1的控件。我没有得到页面的正确对象来分配txtName.text与DataGrid值Window1。

非常感谢...

1 个答案:

答案 0 :(得分:0)

您应该在应用中使用MVVM architectural pattern。然后只需在Page和Window之间共享/复制到WindowModel(它负责保存View和Model之间的值和协调)。因此,您将能够以两种方式正确处理同步。

<强>更新

在事件处理程序的情况下,您需要从DataGrid.Parent向上走,依此类推,直至找到父页面。您需要使用this approach on finding visual parents