0

这是问题所在:

我有一个带有框架的主窗口,我在其中通过按钮加载页面,我这样做是这样的:

private void btnKlanten_Click(object sender, RoutedEventArgs e)
{
    frameMain.Source = new Uri("Frames/Klanten.xaml", UriKind.Relative);
}

在页面浏览中,我制作了一个自定义关闭按钮,所以当我点击它时,我模拟了要关闭的页面,我实际上所做的是将可见性设置为折叠:

private void Close_MouseDown(object sender, MouseButtonEventArgs e)
{
    this.Visibility = Visibility.Collapsed;
}

现在的问题是我找不到任何方法让页面再次可见。我尝试在窗口上实例化页面并以这种方式访问​​可见性属性,但这不起作用。

奇怪的是,当我单击另一个在框架中加载另一个页面的按钮时,它确实有效。在我单击另一个按钮后,当我再次单击第一个按钮时,它也会再次显示。

有什么办法可以让这个工作吗?

4

1 回答 1

2

只需保留对页面的引用

private Page1 page1;
private void btnShowFrame(object sender, RoutedEventArgs e)
{
    if (page1 == null)
    {
        page1 = new Page1();
        frame1.Navigate(page1);
    }
    if (page1.Visibility != System.Windows.Visibility.Visible) page1.Visibility = System.Windows.Visibility.Visible;
}
于 2013-04-12T14:56:16.220 回答