zoukankan      html  css  js  c++  java
  • WPF中退出时显示是否保存数据提示

    一、通过窗体中的按钮实现退出时数据保存提示

    Xaml:

        <Grid>
            <TextBlock HorizontalAlignment="Left" Margin="152,159,0,0" TextWrapping="Wrap" Text="示例数据:" VerticalAlignment="Top" Height="20" Width="104" FontSize="18"/>
            <TextBox x:Name="TextBox_ExpData" HorizontalAlignment="Left" Height="23" Margin="282,156,0,0" TextWrapping="Wrap" Text="" VerticalAlignment="Top" Width="120"/>
            <Button Content="退出" HorizontalAlignment="Left" Margin="448,159,0,0" VerticalAlignment="Top" Width="75" Click="Button_Click"/>
        </Grid>

    后台:

    private void Button_Click(object sender, RoutedEventArgs e)
    {
        if (!this.TextBox_ExpData.Text.Equals("0"))
        {
           MessageBoxResult result = MessageBox.Show("数据有变更,是否保存数据变更?", "WPF实例", MessageBoxButton.YesNoCancel, MessageBoxImage.Question);
           if (result == MessageBoxResult.Yes)
           {
                 MessageBox.Show("数据被保存!");
                 Application.Current.MainWindow.Close();
           }
           else if (result == MessageBoxResult.No)
           {
                 Application.Current.MainWindow.Close();
           }
           else
           {
                 return;
           }
        }
    }

    效果图:

    二、通过点击右上角叉来实现数据保存提示

    Xaml:

    只需要在Window里面加一个Close事件,Closing="Window_Closing"

    后台:

            private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e)
            {
                if (!this.TextBox_ExpData.Text.Equals("0"))
                {
                    MessageBoxResult result = MessageBox.Show("数据有变更,是否保存数据变更?", "WPF实害例�", MessageBoxButton.YesNoCancel, MessageBoxImage.Question);
                    if (result == MessageBoxResult.Yes)
                    {
                        MessageBox.Show("数据被保存。");
                        e.Cancel = false;
                    }
                    else if (result == MessageBoxResult.No)
                    {
                        e.Cancel = false;
                    }
                    else
                    {
                        e.Cancel = true;
                    }
                }
                else
                {
                    e.Cancel = false;
                }
            }
        }

    效果图:

  • 相关阅读:
    UVA 1386 Cellular Automaton
    ZOJ 3331 Process the Tasks
    CodeForces 650B Image Preview
    CodeForces 650A Watchmen
    CodeForces 651B Beautiful Paintings
    CodeForces 651A Joysticks
    HUST 1601 Shepherd
    HUST 1602 Substring
    HUST 1600 Lucky Numbers
    POJ 3991 Seinfeld
  • 原文地址:https://www.cnblogs.com/Leozi/p/10811670.html
Copyright © 2011-2022 走看看