语言

Window.DialogResult 属性

定义

获取或设置对话框结果值,该值是从方法返回 ShowDialog() 的值。

public:
 property Nullable<bool> DialogResult { Nullable<bool> get(); void set(Nullable<bool> value); };
[System.ComponentModel.TypeConverter(typeof(System.Windows.DialogResultConverter))]
public bool? DialogResult { get; set; }
[<System.ComponentModel.TypeConverter(typeof(System.Windows.DialogResultConverter))>]
member this.DialogResult : Nullable<bool> with get, set
Public Property DialogResult As Nullable(Of Boolean)

属性值

Nullable<T>类型的Boolean值。 默认值为 false。

属性

例外

DialogResult 是在通过调用 ShowDialog()打开窗口之前设置的。

-或-

DialogResult 是在通过调用 Show()打开的窗口上设置的。

示例

以下示例演示如何配置“确定”按钮和“取消”按钮以返回相应的 DialogResult按钮。

<Button IsDefault="True" Click="acceptButton_Click">OK (IsDefault=True)</Button>
<Button IsCancel="True">Cancel (IsCancel=True)</Button>
using System;
using System.Windows;
using System.Windows.Controls;

namespace CSharp
{
    public partial class DialogBox : Window
    {
        public DialogBox()
        {
            InitializeComponent();
        }

        // The accept button is a button whose IsDefault property is set to true.
        // This event is raised whenever this button is clicked, or the ENTER key
        // is pressed.
        void acceptButton_Click(object sender, RoutedEventArgs e)
        {
            // Accept the dialog and return the dialog result
            this.DialogResult = true;
        }
    }
}

Imports System.Windows
Imports System.Windows.Controls

Namespace VisualBasic
    Partial Public Class DialogBox
        Inherits Window
        Public Sub New()
            InitializeComponent()
        End Sub

        ' The accept button is a button whose IsDefault property is set to true.
        ' This event is raised whenever this button is clicked, or the ENTER key
        ' is pressed.
        Private Sub acceptButton_Click(ByVal sender As Object, ByVal e As RoutedEventArgs)
            ' Accept the dialog and return the dialog result
            Me.DialogResult = True
        End Sub
    End Class
End Namespace

注解

DialogResult 可从显示对话框的代码中使用,以确定用户是接受 (true) 还是取消 (false) 对话框。 如果接受对话框,则表示打开对话框的代码以检索用户收集的数据并处理它。 但是,如果取消了对话框,则表示调用代码应停止任何进一步处理。

默认情况下,当用户执行以下操作之一时,将取消对话框:

  • 按 Alt+F4。

  • 单击“ 关闭 ”按钮。

  • 从“系统”菜单中选择“ 关闭 ”。

在所有情况下, 默认为 。

对话框通常提供一个用于取消对话框的特殊按钮,即其属性设置为IsCancel的true按钮。 这样配置的按钮会在按下窗口或按下 ESC 键时自动关闭窗口。 在这两种情况下, DialogResult 仍存在 false。

对话框通常还提供接受按钮,该按钮是其 IsDefault 属性设置为的 true按钮。 按这种方式配置的按钮会在按下 ENTER 键或 ENTER 键时引发其 Click 事件。 但是,它不会自动关闭对话框,也不会将其设置为 DialogResulttrue。 需要手动编写此代码,通常来自 Click 默认按钮的事件处理程序。

DialogResult 是 null 显示对话框但未接受或取消时。

对话框关闭后,可以从方法返回 ShowDialog 的值或检查 DialogResult 属性获取对话框结果。

DialogResult只能在通过调用方法Window打开 a ShowDialog 时设置。

注释

在浏览器中托管窗口时,无法设置或获取此属性。

适用于