实验要求:
1、使用vs2010开发工具创建富客户端程序
2、使用滑块控件控制矩形区域颜色变化
3、在WEB页面中调整Silverlight区域大小
实验步骤:
1,创建Silverlight项目,项目名称为MyDemo,主页面为默认页面即MainPage.xaml
2,新建后对页面进行布局,采用GrID+Canvas+Resources布局.
3,定义两行两列.左边跨两行内有4个TextBlock控件分别设置文本为透明度,红色值,蓝色值,绿色值.另有4个SlIDer控件.一个矩形框控件和一个TextBox控件,一个button控件进行全屏设置,进行设置.在App.xaml中通过Resources设置全局样式.
4,对相应控件注入事件,最终实现随着Silder控件值的变化,矩形框颜色和透明度改变,实现颜色调配器功能.
5,调试过程中,通过MyDemotestPage.aspx页面对宽度和高度设置,最终使调配器运行页面中间部位。
实验代码实现:
1,资源文件
VIEw Code<Application.Resources> <Style x:Key="button1" targettype="button"> <Setter Property="FontSize" Value="24"></Setter> <Setter Property="Foreground" Value="Green"></Setter> <Setter Property="Background" Value="Red"></Setter> </Style> <Style x:Key="button2" targettype="button"> <Setter Property="FontSize" Value="14"></Setter> <Setter Property="Foreground" Value="Green"></Setter> <Setter Property="Background" Value="Red"></Setter> </Style> <Style x:Key="textblock1" targettype="TextBlock"> <Setter Property="FontSize" Value="18"></Setter> <Setter Property="FontWeight" Value="Bold"></Setter> <Setter Property="Foreground" Value="White"></Setter> </Style> <Style x:Key="textBox1" targettype="TextBox"> <Setter Property="FontSize" Value="16"></Setter> <Setter Property="Foreground" Value="Green"></Setter> </Style> </Application.Resources>
2,界面设计:
VIEw Code<GrID x:name="LayoutRoot" Background="#46461F"> <GrID.RowDeFinitions> <RowDeFinition Height="150"/> <RowDeFinition Height="160"/> </GrID.RowDeFinitions> <GrID.ColumnDeFinitions> <ColumnDeFinition WIDth="250"/> <ColumnDeFinition WIDth="*"/> </GrID.ColumnDeFinitions> <Canvas GrID.Column="1" GrID.Row="0"> <Rectangle name="rec" GrID.Row="0" GrID.Column="1" WIDth="130" Height="130" Canvas.left="10" Canvas.top="10" VerticalAlignment="Center" Fill="Orange"/> </Canvas> <Canvas GrID.Column="1" GrID.Row="1"> <TextBlock name="mytb1" Style="{StaticResource textblock1}" Text="颜色值:"/> <TextBox name="mytbx1" FontSize="16" Canvas.left="10" WIDth="130" Style="{StaticResource textBox1}" Canvas.top="30"/> <button name="but1" Content="全屏" Style="{StaticResource button2}" Canvas.left="108" Canvas.top="114" Click="but1_Click" /> </Canvas> <Canvas GrID.rowspan="2" GrID.Column="0" GrID.Row="0"> <TextBlock name="Tmytb2" Style="{StaticResource textblock1}" Canvas.left="10" Canvas.top="10" Text="透明度:"/> <SlIDer name="touming" Canvas.left="10" Canvas.top="40" WIDth="200" Height="20" Maximum="255" ValueChanged="touming_ValueChanged" /> <TextBlock name="Rmytb3" Style="{StaticResource textblock1}" Canvas.left="10" Canvas.top="66" Text="红色值:"/> <SlIDer name="red" Canvas.left="10" Canvas.top="98" WIDth="200" Height="20" Maximum="255" ValueChanged="touming_ValueChanged" /> <TextBlock name="Bmytb4" Style="{StaticResource textblock1}" Canvas.left="10" Canvas.top="124" Text="蓝色值:"/> <SlIDer name="blue" Canvas.left="10" Canvas.top="160" WIDth="200" Height="20" Maximum="255" ValueChanged="touming_ValueChanged" /> <TextBlock name="Gmytb5" Style="{StaticResource textblock1}" Canvas.left="10" Canvas.top="186" Text="绿色值:"/> <SlIDer name="green" Canvas.left="10" Canvas.top="223" WIDth="200" Height="20" Maximum="255" ValueChanged="touming_ValueChanged" /> </Canvas> </GrID>
3,后台实现:
SlIDer控件都使用本事件实现
//根据透明度,颜色值改变,调节SlIDer控件值,改变颜色.所有SlIDer控件都使用本事件实现 private voID touming_ValueChanged(object sender,RoutedPropertyChangedEventArgs<double> e) { color color = color.FromArgb((byte)touming.Value,(byte)red.Value,(byte)blue.Value,(byte)green.Value); rec.Fill = new SolIDcolorBrush(color); mytbx1.Text = color.ToString(); }
实现全屏控制:
private voID but1_Click(object sender,RoutedEventArgs e) { Content contentObject = Application.Current.Host.Content; contentObject.IsFullScreen = !contentObject.IsFullScreen; }
实验结果:
1,初始化时设置矩形框颜色,运行后:
2,随着透明度值变化,颜色透明度变化
3,随着红色值,蓝色值,绿色值改变,颜色自动适配
4,点击全屏按钮,页面全屏。再次点击或者esc键退出全屏
5,随着颜色值和透明度改变,文本框显示相应的值
6,页面运行后根据设定大小位置显示
运行结果:
总结以上是内存溢出为你收集整理的【SilverLight】颜色适配器全部内容,希望文章能够帮你解决【SilverLight】颜色适配器所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)