У меня есть всплывающее окно внутри DataTemplate, и я хочу, чтобы по центру Выровнять всплывающее окно по размеру экрана.Ниже приведен код, который я использую для центрирования всплывающего окна, но сценарий состоит в том, что у меня есть три строки в сетке, а ListView находится во втором ряду, из-за чего во всплывающем окне не размещается центр экрана.Кроме того, я не могу переместить его из DateTemplate, так как для него требуется отдельный DataContext элемента.
private void Popup_SizeChanged(object sender, SizeChangedEventArgs e)
{
var popup = sender as Popup;
CoreWindow yourContainingWindow = Window.Current.CoreWindow;
Rect windowBounds = yourContainingWindow.Bounds;
Point windowCenter = new Point(windowBounds.Left + (windowBounds.Width / 2.0), (windowBounds.Height / 2.0));
popup.SetValue(Popup.HorizontalOffsetProperty, windowCenter.X - (popup.ActualWidth / 2.0));
popup.SetValue(Popup.VerticalOffsetProperty, -(popup.ActualHeight / 2.0));
}
Любое предложение о том, как мне достичь упомянутого результата?