Я пытаюсь запустить окно в правом нижнем углу основного дисплея (так как оно определенно будет использоваться в системах с несколькими мониторами).Пока у меня это работает, но окно сначала мигает где-то посередине экрана в течение доли секунды, а затем перемещается в правильное место.Вот что у меня получилось:
public MyWindow()
{
InitializeComponent();
Dispatcher.BeginInvoke(DispatcherPriority.Normal, new Action(() =>
{
var workingArea = System.Windows.Forms.Screen.PrimaryScreen.WorkingArea;
var transform = PresentationSource.FromVisual(this).CompositionTarget.TransformFromDevice;
var corner = transform.Transform(new Point(workingArea.Right, workingArea.Bottom));
this.Left = corner.X - this.ActualWidth;
this.Top = corner.Y - this.ActualHeight;
}));
}
Я пробовал очевидные вещи, такие как скрытие окна и его повторное показание после завершения перемещения, но, похоже, это не сработаетникогда не показывает окно.
Я знаю, что это довольно маленькая проблема, но это странно довольно раздражает, и я бы хотел, чтобы оно было отсортировано!