在C# Windows桌面應用程序,我需要做這樣一個Popup login window彈出登錄窗口中打開一個新的窗口上的父窗口的中間。如何在C#
當我嘗試這個時,我沒有做出像這個登錄窗口。如果我這樣做一個窗口,彈出窗口打開不同的時間不同的位置。
我需要孩子(的意思是登錄窗口)在父窗口的頂部打開,並且此窗口必須是不可移動的,同時父窗口不可訪問直到我關閉子窗口。
在C# Windows桌面應用程序,我需要做這樣一個Popup login window彈出登錄窗口中打開一個新的窗口上的父窗口的中間。如何在C#
當我嘗試這個時,我沒有做出像這個登錄窗口。如果我這樣做一個窗口,彈出窗口打開不同的時間不同的位置。
我需要孩子(的意思是登錄窗口)在父窗口的頂部打開,並且此窗口必須是不可移動的,同時父窗口不可訪問直到我關閉子窗口。
試試這個代碼
<Grid x:Name="grdOverlay" Panel.ZIndex="1000" Visibility="Visible" KeyDown="grdOverlay_KeyDown">
<Grid.Background>
<SolidColorBrush Color="Black" Opacity=".5"/>
</Grid.Background>
</Grid>
比方說,你的孩子形式命名childForm。
去你childForm設計和properties
找到StartPosition
和它的值改爲CenterScreen
。它會導致加載你的表格始終在屏幕中心。
2.爲使其不可移動,在屬性中,將FormBorderStyle
更改爲none
。在這種情況下,你需要創建一個關閉按鈕爲您的登錄表單,並在其on click
事件,你應該使用此代碼:
this.Close();
3.從主窗體,你應該使用ShowDialog
其原因打開你的登錄表單您的主表單在您的登錄表單打開時無法訪問。
childForm login = new childForm();
login.ShowDialog();
我不想打開窗口的中間檢查,我想在一個窗口的中間打開。那留在彈出窗口後面.. –
這將是非常困難的代碼。你必須得到上一個窗口的大小和位置,然後計算登錄表單的位置,使其位於中間。 – Nofuzy
它是一個桌面應用程序 – Nofuzy
確定..對不起,我想我WPF將是一個 –