1. 程式人生 > >WPF子窗體隨父窗體移動而移動

WPF子窗體隨父窗體移動而移動

主窗體

	/// <summary>
	/// 選單-關於
	/// </summary>
	/// <param name="sender"></param>
	/// <param name="e"></param>
	private void About_Click(object sender, RoutedEventArgs e)
	{
		//顯示“關於”介面,隱藏當前窗體
		About about = new About(this.Top,this.Left);
		about.ShowDialog();  
		//this.Hide();
	}

show和showDialog的區別
用showDialog的話,在開啟子窗體時候就不能對父窗體進行操作了;

About.xaml.cs子窗體

	public About(double x, double y)
        {
            InitializeComponent();
            //啟用‘Manual’屬性後,可以手動設定窗體的顯示位置
            this.WindowStartupLocation = WindowStartupLocation.Manual;
            this.Top = x;
            this.Left = y;
        }

建構函式的作用:
建構函式是一種特殊的成員函式,它主要用於為物件分配儲存空間,對資料成員進行初始化;特別的一個類可以有多個建構函式,可根據其引數個數的不同或引數型別的不同來區分它們,即建構函式的過載;

特點:
1)建構函式的名字必須與類同名;
2)建構函式沒有返回型別,它可以帶引數,也可以不帶引數;
3)宣告類物件時,系統自動呼叫建構函式,建構函式不能被顯式呼叫;
4)建構函式可以過載,從而提供初始化類物件的不同方法;
5)若在宣告時未定義建構函式,系統會自動生成預設的建構函式,此時建構函式的函式體為空;
6)靜態建構函式,用static修飾,用於初始化靜態變數,一個類只允許有一個建構函式,在類例項化時載入,這時修飾符public、private失去作用;
7)可以使用public、protected、private修飾符;
8)引用父類構造時用():base()方法,引用自身過載的構造使用():this(int para);