Я использую элемент управления AvalonDock
, чтобы показать свои представления в виде вкладок. В некоторых случаях я хочу открыть вместо этого новое окно. На данный момент, я обработки, что в LayoutInitializer:Make FloatingWindow modal
public void AfterInsertDocument(LayoutRoot layout, LayoutDocument anchorableShown)
{
if (anchorableShown.Content != null && anchorableShown.Content is ViewModelBase)
{
var viewModel = ((ViewModelBase)anchorableShown.Content);
if (viewModel.Type == ViewModelBase.ViewType.Popup)
{
anchorableShown.FloatingWidth = viewModel.PopupWidth;
anchorableShown.FloatingHeight = viewModel.PopupHeight;
anchorableShown.FloatingTop = viewModel.PopupTop;
anchorableShown.FloatingLeft = viewModel.PopupLeft;
anchorableShown.Float();
}
}
}
Это работает отлично. Но я хочу, чтобы это новое плавающее окно стало модальным окном. И он не должен быть закреплен. Я не знаю, где я могу справиться с этим.
леях и иностранной валюте окна модели, которая не является плавающим = вы не нужен AvalonDock для этого, просто используйте стандартное окно? – stijn
Почему вы хотите, чтобы плавающее окно было модальным? Что случилось с «стандартными» окнами? – dymanoid
@stijn - я хочу использовать те же шаблоны + логику. если бы я использовал «нормальные» (стандартные) окна, тогда я должен реализовать их для окон. – mxdeluxe