Caliburn.Micro フレームワークを使用したプロジェクトで VS スタイルの Tabcontrol (MahApps.Metro プロジェクトから) を使用しています。Conductor.Collection.OneActive から継承した ViewModel にタブが閉じられていることを知らせる方法を探しています。 . 残念ながら、閉じるボタンは既にスタイルに含まれているため、少し混乱しています。この VS Tabcontrol スタイルの MahApps ソース ファイルを調べたところ、各閉じるボタンが CloseCommmand (Command="{Binding Path=CloseCommand}") にバインドされていることがわかりました。そのボタンのクリックにどのように反応できますか?
2 に答える
0
DeactivateItem
閉じるボタンにイベントを添付します。
<Button cal:Message.Attach="DeactivateItem($dataContext, 'true')" />
DeactivateItem
Conductor クラスで定義されている caliburn micro のフレームワーク メソッドです。このメソッドは、関連付けられたビューを閉じ、コンダクター コレクションからビューを削除します。
ご参考までに:
フレームワーク方式。
public override void DeactivateItem(T item, bool close) {
if(item == null || !item.Equals(ActiveItem))
return;
CloseStrategy.Execute(new[] { ActiveItem }, (canClose, items) => {
if(canClose)
ChangeActiveItem(default(T), close);
});
}
于 2015-06-26T16:51:55.737 に答える