当前位置: 代码迷 >> Windows Mobile >> WP7 Silverlight 中自己实现一个类似StatusBar类遇到的有关问题
  详细解决方案

WP7 Silverlight 中自己实现一个类似StatusBar类遇到的有关问题

热度:118   发布时间:2016-04-25 08:02:07.0
WP7 Silverlight 中自己实现一个类似StatusBar类遇到的问题
需求:
        我实现一个批量图片拷贝的函数时,希望是在page的下方能够实现一个statusbar来显示当前拷贝的文件的名称
        为了以后能用在别的地方,我单独实现了一个   StatusBarControl的控件
        这个控件主要由一个TextBlock组成,我企图通过设置他的Text属性来更新显示的消息。
       
问题来了:
      我在拷贝文件的循环里面(从系统medialib拷贝到isolatedStorage里面)   在拷贝之前,调用statusbar.ShowMessage(message),   可是这不能导致负责现实消息的TextBlock得到刷新,   message根本显示不出来。   不管是否进行了拷贝,都显示不出来。

可能我对c#绘图的机制不了解,开始想找些强制刷新TextBlock的方法,可是没有,后来什么依赖属性都用上了还是不行,还是请高手给参谋一下
为了避免混乱我把主要代码贴再后面。

//   下面是   StatusBar   xaml主要内容

  <Grid   x:Name= "LayoutRoot ">
                <Grid.ColumnDefinitions>
                        <ColumnDefinition   Width= "* "   />
                </Grid.ColumnDefinitions>
                <Border   Name= "frameBorder "
                                BorderThickness= "1 "  
                                BorderBrush= "{StaticResource   PhoneAccentBrush} "  
                                HorizontalAlignment= "Stretch ">

                        <TextBlock   Name= "messageTextBlock "   />
                                           

                </Border>
        </Grid   >

//下面是   StatusBar   code-behinded   主要内容
  public   partial   class   StatusBarControl   :   UserControl
        {
                private   DispatcherTimer   clearTimer;

                public   Thickness   FrameBorderThickness
                {
                          ...   //省略

                  }
                public   double   MessageFontSize
                {
                        ...   //省略
                }

                public   StatusBarControl()
                {
                        clearTimer   =   new   DispatcherTimer();

                        InitializeComponent();
                    }
  相关解决方案