子窗体覆盖层的颜色和透明度更改

      这两天貌似比较轻松,主要是自己去看示例,可是无聊至极啊,我宁愿做个程序或项目。在不会中探究好过盲目的看。今天先上篇简单的。

      接触Silverlight项目这么久,最让我惊喜的是里面的子窗体,太方便了。只要在父窗体中实例化子窗体,然后show()就可以了,效果就是我之前贴出来的登陆窗体的效果,贴上来再看下。为什么让我惊喜呢,因为我在之前用05的版本的时候,为了做这个效果,麻烦死了,要自己写弹出层,在适当的时候隐藏显示层,太烦。现在方便多了。

      有时候会觉得它自带的有些不太好的地方,比如说覆盖层颜色不喜欢。这些是可以更改的,只要在子窗体的代码中写这几段就可以了
            OverlayOpacity = 0.5;    //覆盖层透明度更改

            //颜色更改
            SolidColorBrush sob = new SolidColorBrush();
            sob.Color=Color.FromArgb(255,255);
            OverlayBrush = sob;   

      很简单吧,那来点好玩的吧。在子窗体上面添加一个Slider控件。.xaml代码如下:

<Slider x:Name="Slider1" IsEnabled="True" Maximum="1" Minimum="0" Value="{Binding OverlayOpacity,Mode=TwoWay}" Width="200" Height="28" Margin="129,99,0" VerticalAlignment="Top" HorizontalAlignment="Left" />最小值为零,最大值为一,value值绑定OverlayOpacity,Mode一定要是TwoWay,OneWay与TwoWay的区别类似于VS05中的Eval和Bind,OneWay只读,TwoWay读写。先别急着运行,在后台代码即.xaml.cs文件中一定要加上这句this.DataContext = this;要不然OverlayOpacity的值绑定不上去。现在可以运行了,自己看下效果吧。

      再来,在子窗体中添加一个ComboBox代码如下:

      再运行下看看呢。

相关文章

如何在Silverlight4(XAML)中绑定IsEnabled属性?我试过简单的...
我正在编写我的第一个vb.net应用程序(但我也会在这里标记c#,...
ProcessFile()是在UIThread上运行还是在单独的线程上运行.如...
我从同行那里听说,对sharepoint的了解对职业生涯有益.我们不...
我正在尝试保存一个类我的类对象的集合.我收到一个错误说明:...
我需要根据Silverlight中的某些配置值设置给定控件的Style.我...