这节,我们的任务很简单。使其flyOut用户能够完成一定动作。
为用户控件编码
上节,我说到过,用户控件是由源代码文件的。所以, HomeZipCodeFlyout这个用户控件源代码如下:
1 using Windows.UI.Xaml;
2 using Windows.UI.Xaml.Controls;
3 namespace MetroGrocer.Flyouts {
4 public sealed partial class
5 HomeZipCodeFlyout : UserControl {
6 //HomeZip的构造函数
7 //进行初始化
8 public HomeZipCodeFlyout() {
9 this.InitializeComponent();
10 }
11 //展示的方法
12 public void Show(Page page, AppBar appbar, Button button) {
13 //HomeZip的popup的控件 展示
14 HomeZipCodePopup.IsOpen = true;
15 //展示在appBar 下面的篇幅实现
FlyoutHelper.ShowRelativeToAppBar(HomeZipCodePopup, page, appbar, button);
16 }
17 //Click事件
18 private void OKButtonClick(object sender, RoutedEventArgs e) {
19 //Popup不显示
20 HomeZipCodePopup.IsOpen = false;
21 }
22 }
23 }
我这个show方法, 是使其Popup的控件不显示。Click事件,不是其PopUp控件不显示。
下面的问题,是在FlyOut控件中,定位Popup位置,我将在Click Button事件中的FlyoutHelper的ShowRelativeToAppBar方法实现。
FlyoutHelper中的ShowRelativeToAppBar方法又是如何实现,我将在以后下一节实现。