Wpf Prism,AvalonDock区域适配器(处理关闭文档窗格事件)

Wpf Prism,AvalonDock区域适配器(处理关闭文档窗格事件),wpf,events,event-handling,prism,mef,Wpf,Events,Event Handling,Prism,Mef,我有一个Prism v4/MEF/WPF解决方案,可以将模块视图加载到Avalon Dock中的DocumentPane中。我正在尝试创建关闭事件的句柄(当按下“X”以关闭DocumentPane时)。我搞不清楚,这是我的RegionaAdapter类中创建DockableContent的部分,也是我尝试处理close事件的部分(我尝试了3个事件): ViewsCollectionChanged上的私有void(对象发送者、NotifyCollectionChangedEventArgs e、I

我有一个Prism v4/MEF/WPF解决方案,可以将模块视图加载到Avalon Dock中的DocumentPane中。我正在尝试创建关闭事件的句柄(当按下“X”以关闭DocumentPane时)。我搞不清楚,这是我的RegionaAdapter类中创建DockableContent的部分,也是我尝试处理close事件的部分(我尝试了3个事件):

ViewsCollectionChanged上的私有void(对象发送者、NotifyCollectionChangedEventArgs e、IRegion区域、DocumentPane区域目标)
{
if(e.Action==NotifyCollectionChangedAction.Add)
{
foreach(e.NewItems中的对象项)
{
UIElement视图=作为UIElement的项目;
如果(视图!=null)
{
DockableContent newContentPane=新DockableContent()
{
内容=项目,
Title=((ITabViewInfo)视图)。选项卡视图标题
图标=((ITabViewInfo)视图)。选项卡视图图标
};
newContentPane.Closed+=新事件处理程序(newContentPane\u Closed);
newContentPane.Manager.DocumentClosed+=新事件处理程序(Manager\u DocumentClosed);
newContentPane.Manager.DocumentClosing+=新事件处理程序(Manager\u DocumentClosing);
regionTarget.Items.Add(newContentPane);
newContentPane.Activate();
}
}
}
else if(e.Action==NotifyCollectionChangedAction.Remove)
{
//这永远不会被击中
Debug.WriteLine(“删除”);
}
}
这些事件永远不会命中(我在每个事件中都有一个debug.writeline):

newContentPane.Closed+=neweventhandler(newContentPane\u Closed);
newContentPane.Manager.DocumentClosed+=新事件处理程序(Manager\u DocumentClosed);
newContentPane.Manager.DocumentClosing+=新事件处理程序(Manager\u DocumentClosing);
如何处理DocumentPane的关闭事件

我用于此区域适配器的代码基于在此处找到答案

我必须补充:

IsCloseable = true
HideOnClose = false
在这里找到了答案

我必须补充:

IsCloseable = true
HideOnClose = false
IsCloseable = true
HideOnClose = false