如何从功能区窗口捕获OnClosing事件?

时间:2011-02-19 13:44:28

标签: wpf ribbon

在我的应用程序中,我曾经使用过从System.WIndows.Window扩展的wpf窗口。

我正在考虑将它们迁移到使用从ToolWindow扩展的Ribbon Windows。

不幸的是我无法在Ribbon窗口中使用OnClosing事件。

窗口关闭时如何触发?

我需要类似以下的内容

protected override void OnClosing(CancelEventArgs e) {
            e.Cancel = true;
    }

由于

1 个答案:

答案 0 :(得分:0)

试试这个: 在XAML上添加Closing

<ribbon:RibbonWindow x:Class="RibbonWindowSample.RibbonWindowWord"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:ribbon="http://schemas.microsoft.com/winfx/2006/xaml/presentation/ribbon"
    xmlns:local="clr-namespace:RibbonWindowSample"
    Title="RibbonWindowWord" Height="600" Width="1000"

    Closing="RibbonWindow_Closing"
>
    <TextBlock Text="Hello" />
</ribbon:RibbonWindow>

代码添加

private void RibbonWindow_Closing(object sender, System.ComponentModel.CancelEventArgs e)
{
    if (MessageBox.Show("Confirm?", "Confirm", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
        e.Cancel = true;
}