/ / Показване на прозоречен център - .net, wpf, xaml, решетка, центриране

Показване на прозорец - .net, wpf, xaml, решетка, центриране

Трябва да покажа Window във втората колона на моя Grid, Тъй като това е Window, Не мога да го добавите директно към мрежата чрез XAML.Мога ли да програмирам центъра на втората колона на моята мрежа, така че да преместя прозореца си там, преди да я покажа?

Вторият ми прозорец е просто фантазия малка кутия за съобщения. Преди това се опитвах да го превръщам в UserControl вместо a Window, така че мога да я сложим директно във втората колона на мрежата, но тогава не мога да го направя ShowDialog() върху него. Трябва да чакам потребителят да кликне върху ОК, преди да се придвижи напред.

Отговори:

1 за отговор № 1

За всеки, който търси отговор, ето какво направих:

private void CenterWindowInRightPane(Window window, UIElement rightPane)
{
Point loc = rightPane.TransformToAncestor(this).Transform(new Point(0, 0));
w.Left = (this.Left + loc.X) + (rightPane.ActualWidth - w.ActualWidth) / 2;
w.Top = (this.Top + loc.Y) + (rightPane.ActualHeight - w.ActualHeight) / 2;
}

0 за отговор № 2

Мисля, че MDI интерфейс отговаря на вашия случай: http://wpfmdi.codeplex.com


0 за отговор № 3

Можете да използвате a Popup към който сте задали мрежата като PlacementTarget и поставете Placement=Center