zoukankan      html  css  js  c++  java
  • Windows Phone开发学习笔记(1)---------自定义弹框

                                 Windows Phone开发学习笔记(1)

                                              ---------自定义弹框

        在WP中自定义弹框是可以通过Popup类实现的。

        Popup的语法为:

                [ContentPropertyAttribute("Child")]

                [LocalizabilityAttribute(LocalizationCategory.None)]

                public class Popup : FrameworkElement, IAddChild;

         这是Popup使用的小列子

                Popup codePopup = new Popup();

                TextBlock popupText = new TextBlock();

                popupText.Text = "Popup Text";

                  popupText.Background = Brushes.LightBlue;popupText.Foreground = Brushes.Blue;

                codePopup.Child = popupText;

        当然上面都是从MSDN上抄的,下面我们来使用一下:

        新建一个window phone项目,名字随便,新建一个类用来弹框,命名MyMessageBox;在其上添加成员变量,private Popup popup;

        新建一个控件布局文件,命名Message,用于弹框的布局;

        在Message里添加你想要的控件;

        我在这里添加的为: 

    <UserControl x:Class="AppStudy_1.Message"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        mc:Ignorable="d"
        FontFamily="{StaticResource PhoneFontFamilyNormal}"
        FontSize="{StaticResource PhoneFontSizeNormal}"
        Foreground="{StaticResource PhoneForegroundBrush}"
        d:DesignHeight="480" d:DesignWidth="480">
        
        <Grid x:Name="LayoutRoot" Background="{StaticResource PhoneChromeBrush}">
            <TextBlock Text="李贵发" FontSize="100" />
            <Button Content="OK"/>
        </Grid>
    </UserControl>
    View Code

        然后我们就可以在MyMessageBox中添加显示的代码了,在MyMessageBox添加方法Show(),用于显示弹框

        首先我们要把Popup new 出来来即:popup=new Popup();

        然后new 一个StackPanel的对象用于存放弹框界面,

        将Message加入StackPanel,

        给StackPanel创建模板,

        之后将Popup 对象的字节点设为StackPanel,

        将Popup 显示出来

        代码为: 

    public void Show()
            {
                popup = new Popup();
                StackPanel panel = new StackPanel();
                panel.Children.Add(new AppStudy_1.Message());
                panel.Children.Add(new Rectangle { Width = 480, Height = 800, Fill = new SolidColorBrush(Colors.Gray), Opacity = 0.5 });
                popup.Child = panel;
                popup.IsOpen = true;
            }
    View Code

        在主窗口中添加Button并设置单击函数,执行Show方法;

        到此就可以显示窗口了

        

     

  • 相关阅读:
    高效是如何来的
    find 删除指定日期的文件
    MySQL基础教程
    grep search information
    关于进程的问题
    linux useradd 命令
    host and ip 的关系
    git cherry-pick 教程
    正则练习
    正则表达式-获取
  • 原文地址:https://www.cnblogs.com/liguifa/p/3819091.html
Copyright © 2011-2022 走看看