如何只显示一次窗口?

时间:2016-06-28 19:35:35

标签: c# wpf

我想只显示一次窗口。当用户点击此按钮时:

private void Notification_Click(object sender, RoutedEventArgs e)
    {
        NotificationSettings notifications = new NotificationSettings();
        notifications.ShowDialog();
    }

这将创建一个新窗口,我希望如果已经打开一个窗口,用户就无法打开一个新窗口。在xaml中有一个选项可以告诉编译器吗?我记得带有Windows窗体的vb.net允许设置选项,以便只显示一个窗口。

感谢。

2 个答案:

答案 0 :(得分:0)

只需在字段/属性中保留对窗口的引用,然后检查它是否已SELECT table_name, column_name FROM information_schema.columns WHERE column_name LIKE '%\_by'

答案 1 :(得分:0)

我确定NotificationSettings究竟是什么,但是对于一个窗口你可以创建一个bool标志来标记窗口打开和关闭时,检查以下代码:

public partial class MainWindow : Window
{

    public MainWindow()
    {
        InitializeComponent(); 
    }

    bool WindowFlag = false;

    private void button_Click_1(object sender, RoutedEventArgs e)
    {
        Window TestWindows = new Window();
        TestWindows.Closing += TestWindows_Closing;

        if (WindowFlag == true)
        {               
            MessageBox.Show("The Window is already opened");
        }
        else
        {
            TestWindows.Show();
            WindowFlag = true;
        }
    }

    private void TestWindows_Closing(object sender, System.ComponentModel.CancelEventArgs e)
    {
        WindowFlag = false;
    }
}