2
我試圖讓窗口在主顯示器的右下角開始(因爲它肯定會用在多顯示器系統上)。到目前爲止,我已經開始工作了,但窗口首先在屏幕中間的某個地方閃爍一秒鐘,然後移動到正確的位置。下面是我有:WPF窗口位置
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;
}));
}
我已經試過像隱藏窗口,然後再顯示一次搬遷完成顯而易見的東西,但似乎並沒有工作,要麼因爲它只是此後再也沒表演窗戶。
我知道它的一個很小的問題,但它奇怪的是很煩人,我很樂意將它分類!
您好,我知道這可能是在你的心中早,但希望能幫助。你說你已經通過使用上面提到的代碼實現了這一點,爲什麼不嘗試設置窗口的默認可見性摺疊,然後在執行代碼後將其設置爲可見。 – 2012-01-30 14:08:56
由於某種原因,當我這樣做時,窗口從未出現。這可能是因爲我有可見性= Visibility.Visible在錯誤的地方,但無論如何,它感覺hacky :) – 2012-01-30 14:39:56
是啊感覺就像一個小三輪車:)無論如何祝賀解決問題,沒有我骯髒的想法:) lolz – 2012-01-30 14:41:21