有网友询问我有关Childwindow是否能指定弹出位置?
其实只要透过小小的调整就可以达成指定位置的设定噜!?
?
网友Thomas询问我有关Childwindow是否能指定弹出位置?
(发问)
?
延续,我们接下去介绍吧!
(Chapter20文末有范例档,可以下载後跟着本篇文章进行)
?
01
从Projects下,找到当初Childwindow的.Xmal档
?
点击後开启
让我们看一下原本Childwindow预设的位置,Childwindow->Properties->Layout
HorizontalAlignment以及VerticalAlignment都是设定为置中
?
按下F5以後,PopUp的位置也是在网页中心
?
02
若要自订PopUp的位置
其实我们调整一下Properties->Layout下的HozontalAlignment、VerticalAlignment或是Margin就可以了
?
试试调整HozontalAlignment->靠右对齐,并且设定Margin Right为5
?
按下F5,PopUp的位置正如我们设定,乖乖的靠右且距离右边5个Pixel
?
03
第二个方法:修改.cs
延续 Step 02 所做的Layout(靠右且距离右边5个Pixel)
?
请到MainPage.Xaml.cs,找到下列这几行
1: private void Image_MouseLeftButtonDown(object sender, System.Windows.Input.MouseButtonEventArgs e)
2: {
3: // TODO: Add event handler implementation here.
4: ImageChildWindow dlg=new ImageChildWindow();
5: dlg.Show();
6: }
?
改为下列这段
?
1: private void Image_MouseLeftButtonDown(object sender, System.Windows.Input.MouseButtonEventArgs e)
2: {
3: // TODO: Add event handler implementation here.
4: ImageChildWindow dlg=new ImageChildWindow();
5: dlg.Margin=new Thickness(0,0,55,0);
6: dlg.Show();
7: }
?
其中新增的部份如下:
?
dlg.Margin=new Thickness( 0 , 0 , 55 , 0 );
(程式不份在这里我就不多做介绍,想看更多,请参考)
?
Thickness後面刮号内的四个数字分别是左、上、右、下的边界设定
另外,如果你不是下载我的范例档来练习,别忘了要把ImageChildWindow改成你自己命名的ChildWndow档名喔!
?
按下F5,你会发现因为沿用了Step02的靠右对齐设定,PopUp的位置依然靠右
但是因为Thickness的设定,所以右多了55的距离
?
?
?
?
?
?
所以只要透过小小的调整就可以达成指定位置的设定噜!
?
以上简单的介绍,希望有为Thomas解答,也帮助其他人。
?
?
?
?
?
?
?
本篇的教学就到此。
?
?
?
(若有任何错误的地方,请各位前辈或同好能不吝指教,小女子都会虚心接受;若是你喜欢我的教学,请给我点鼓励,谢谢。)
?
?
?
?
?
?
?
?
?
?
?
一步一步迈向HIE之路
喜欢我文章请推我一下或给我个回应,你的鼓励会给我无限的动力喔!
若是您有其他问题或是特别需要,请在文章回应处留言,我会尽快回覆您