将命令属性与 CM 操作方法/协程一起使用
本文关键字:一起 程一起 属性 命令 CM 操作方法 | 更新日期: 2023-09-27 18:34:38
这与这个问题有关
MVVM关闭文档的方式,可以取消
我正在使用第三方库(AvalonDock(它有一个CloseCommand属性,如何使用Caliburn将此属性挂接到Action方法?
使用香草WPF,它可能看起来像这样
<ad:DockingManager
DataContext="{Binding Manager}"
DocumentsSource="{Binding Documents}">
<ad:DockingManager.LayoutItemContainerStyle>
<Style TargetType="{x:Type ad:LayoutItem}">
<Setter Property="CloseCommand" Value="{Binding Model.CloseCommand}"/>
</Style>
</ad:DockingManager.LayoutItemContainerStyle>
</ad:DockingManager>
如果我理解正确,你可以试试这个。
<ad:DockingManager cal:Message.Attach="[Event DocumentClosed] = [Action DockingManager_DocumentClosed($eventArgs)]" />
在您的视图中模型
public void DockingManager_DocumentClosed(DocumentClosedEventArgs e)
{
Models.Documents.Document doc = e.Document.Content as Models.Documents.Document;
DocumentSources.Remove(doc);
}
您从那里有多种选择。
ps:Models.Documents 是一个类,其中存储了我的(文档(集合