【问题标题】:Refresh or Close wpf window刷新或关闭 wpf 窗口
【发布时间】:2015-11-02 02:42:55
【问题描述】:

我有一个 wpf 窗口,它显示 Bing 地图,上面有 som bushpin, 通过在后面的代码中单击按钮来打开窗口。 每次我点击按钮,新窗口都会显示当前的新数据。

如何关闭“已经”打开的窗口并用新数据打开一个新窗口,或者用新数据刷新当前打开的窗口。

这是我的代码:

        IList<object> rowsToExport = getRows();
        BingMapWindow window = new BingMapWindow(rowsToExport);

        // somthing like this
        if(window.IsOpened)
           window.Close;
        window.show();

          OR
         if(window.IsOpened)
           window.refresh();

【问题讨论】:

    标签: wpf xaml


    【解决方案1】:

    您是否考虑过在方法之外存储对该窗口的引用并仅检查它是否为空?

    BingMapWindow window;
    
    private void CloseWindow() 
    {
        if(window != null)
        {
            window.Close();
            window = null;
        }
    }
    
    private void OpenWindow(BingMapWindow window)
    {
        this.window = window;
        this.window.Show();
    }
    
    private void ButtonHandler()
    {
        CloseWindow();
        var bingWindow = new BingMapWindow();
        OpenWindow(bingWindow);
    }
    

    【讨论】:

    • 或者如果你想“刷新数据”,如果它正在使用一个,你改变“DataContext”属性可能就足够了。
    猜你喜欢
    • 1970-01-01
    • 2011-01-19
    • 1970-01-01
    • 2012-07-09
    • 2011-05-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多