Window.Close 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
手动关闭 Window。
public:
void Close();
[System.Security.SecurityCritical]
public void Close ();
public void Close ();
[<System.Security.SecurityCritical>]
member this.Close : unit -> unit
member this.Close : unit -> unit
Public Sub Close ()
- 属性
示例
以下示例演示正在处理 一个“文件>退出 ”菜单以显式调用 Close。
<MenuItem Name="fileExitMenuItem" Header="E_xit" Click="fileExitMenuItem_Click"></MenuItem>
void fileExitMenuItem_Click(object sender, RoutedEventArgs e)
{
// Close this window
this.Close();
}
Private Sub fileExitMenuItem_Click(ByVal sender As Object, ByVal e As RoutedEventArgs)
' Close this window
Me.Close()
End Sub
注解
Window可以使用位于其标题栏中的多个已知系统提供的机制之一关闭 ,其中包括:
- Alt+F4。
- 系统菜单 | 关闭。
- “关闭 ”按钮。
Window还可以使用开发人员提供的工作区中多种已知机制之一关闭 ,包括:
- 文件>在main窗口中退出。
- 文件>子 窗口上的“ 关闭” 或“关闭”按钮。
注意
对话框中的“确定”和“取消”按钮也是开发人员提供的,不过可能会设置 DialogResult,这会自动关闭通过调用 ShowDialog打开的窗口。
这些机制要求显式调用 Close 以关闭窗口。
注意
如果通过调用 ShowDialog打开的窗口,并且 Button 其 IsCancel 属性设置为 true 的 窗口将在单击按钮或按下 ESC 时自动关闭。 但是,如果使用 打开窗口 Show, Close 则必须显式调用 ,例如,从 Click 的 Button事件处理程序中调用 。
关闭窗口会导致 Closing 引发事件。 Closing如果事件未取消,则会发生以下情况:
Window如果Application对象) 存在,则从 Application.Windows (中删除 。
Window如果在显示所有者之前和打开所有者Window之后建立了所有者/拥有Window的关系,则会从所有者Window中删除 。
引发 Closed 事件。
释放由 Window 创建的非托管资源。
如果ShowDialog调用 以显示 ,WindowShowDialog则返回 false。
关闭 会导致 Window 其拥有的任何窗口关闭。 此外,关闭 Window 可能会导致应用程序停止运行, Application.ShutdownMode 具体取决于属性的设置方式。
注意
当窗口托管在浏览器中时,无法调用此方法。