zoukankan      html  css  js  c++  java
  • Silverlight for Windows Phone 7Popup

      在Windows Phone 7开发者我在不使用Progressbar的前提下又想告诉用户程序正在运行,显示一个进度对话框,这时我们就可以用Popup。

    前台

     <Popup x:Name="ProgressPopup" Width="300" IsOpen="False" HorizontalAlignment="Center"
                       VerticalAlignment="Top" d:LayoutOverrides="Width, HorizontalMargin" Margin="89,203,91,0">
                    <Border BorderThickness="10" BorderBrush="Black" Background="DarkGray" Padding="30,30">
                        <StackPanel>
                            <TextBlock MaxHeight="100" Foreground="White"  FontWeight="Bold"  FontSize="36" x:Name="txt" Text="1">
                                <TextBlock.Triggers>
                                    <EventTrigger RoutedEvent="TextBlock.Loaded">
                                        <BeginStoryboard> <Storyboard>
                                            <DoubleAnimation   AutoReverse="True" Duration="0:0:1"
                                         From="1.0" RepeatBehavior="Forever"  Storyboard.TargetName="txt" Storyboard.TargetProperty="Opacity"   To="0.0"/> 
                                        </Storyboard>
                                        </BeginStoryboard>                            
                                    </EventTrigger>                       
                                </TextBlock.Triggers>
                            </TextBlock>
                        </StackPanel>
                    </Border>
                </Popup>

    后台

     public partial class MainPage : PhoneApplicationPage
        {
            Storyboard _timer = new Storyboard();
          
            int i=0;
            public MainPage()
            {
                InitializeComponent();

                _timer.Duration = TimeSpan.FromMilliseconds(10);
                _timer.Completed += new EventHandler(_timer_Completed);
                _timer.Begin();
                 i = Convert.ToInt32(txt.Text);
            }

            private void PhoneApplicationPage_Loaded(object sender, RoutedEventArgs e)
            {
                this.Dispatcher.BeginInvoke(new Action(() => ProgressPopup.IsOpen = true));
            }

            void _timer_Completed(object sender, EventArgs e)
            {
               
                if (i <= txt.MaxHeight)
                {
                    i++;
                    this.txt.Text = i.ToString();
                    _timer.Begin();

                    return;
                }

                this.Dispatcher.BeginInvoke(new Action(() => { ProgressPopup.IsOpen = false; }));
            }

        }

  • 相关阅读:
    笔记20200521002:多线程【线程的优先级】
    笔记20200521001:多线程【守护线程】
    笔记20200520:多线程【线程强制执行_join】
    笔记20200519:多线程【线程礼让_yield】
    笔记20200518:多线程【线程休眠_sleep】
    2020.4.4号全国疫情哀悼日网页变灰色前端是如何实现的?-pink老师
    2020年最新版Web前端学习路线图-前端小白入门必读-pink老师推荐
    ECharts数据可视化项目-大屏数据可视化展示-echarts 图表入门基础视频制作-pink老师直播课更新完毕
    2019前端学习路线心得-黑马程序员pink老师
    2019年最新超级有趣好玩的html+css网页布局课程,前端入门基础,html5+css3零基础入门课程-黑马程序员pink老师精心录制
  • 原文地址:https://www.cnblogs.com/salam/p/1917919.html
Copyright © 2011-2022 走看看