问题在于:
我有一个带有框架的主窗口,我用buttonpress加载页面,我喜欢这样:
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;
}
现在的问题是我找不到任何方法让页面再次可见。 我尝试在窗口上对页面进行实例化并以这种方式访问visibility属性,但这不起作用。
奇怪的是,当我点击另一个按钮来加载框架中的另一个页面时,这确实有效。点击另一个按钮后,当我再次点击第一个按钮时,也会再次显示。
有没有办法让这个工作?
答案 0 :(得分:1)
只需保留对页面的引用
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;
}