基于Cairngorm的Silverlight开发 - part4

简介: 通过绑定用视图来管理ModelLocator   由于绑定是双向的,所以在绑定到一些可以操作其自身属性的的控件时,对ModelLocator也是有影响的。这里把上边事例中的颜色的RGB值分别绑定到三个Slider控件上。

通过绑定用视图来管理ModelLocator  

由于绑定是双向的,所以在绑定到一些可以操作其自身属性的的控件时,对ModelLocator也是有影响的。这里把上边事例中的颜色的RGB值分别绑定到三个Slider控件上。
         public  ColorConfig()
        {
            InitializeComponent();
            
this .Loaded  +=   new  RoutedEventHandler(ColorConfig_Loaded);
        }

        
void  ColorConfig_Loaded( object  sender, RoutedEventArgs e)
        {
            ByteConverter bc
= new  ByteConverter();
            
this .DataContext  =  BackGroundModel.Instance;
            Binding bindR 
=   new  Binding( " R " );
            bindR.Mode 
=  BindingMode.TwoWay;
            bindR.Converter 
=  bc;
            xRSlider.SetBinding(Slider.ValueProperty, bindR);
            Binding bindG 
=   new  Binding( " G " );
            bindG.Mode 
=  BindingMode.TwoWay;
            bindG.Converter 
=  bc;
            xGSlider.SetBinding(Slider.ValueProperty, bindG);
            Binding bindB 
=   new  Binding( " B " );
            bindB.Mode 
=  BindingMode.TwoWay;
            bindB.Converter 
=  bc;
            xBSlider.SetBinding(Slider.ValueProperty, bindB);
        }

这里用到了一个数据值的转换,有时需要把一个图片绑定到控件上,但是只有图片的Uri是不行的,要做一步转换。我给出的代码片段都是最简单的。
     public   class  ByteConverter:IValueConverter
    {
        
public   object  Convert(
            
object  value,
            Type targetType,
            
object  parameter,
            CultureInfo culture)
        {
            
int  b  =  System.Convert.ToInt32(value);
            
return  ( byte )b;
        }

        
public   object  ConvertBack(
            
object  value,
            Type targetType,
            
object  parameter,
            CultureInfo culture)
        {
            
byte  b  =  System.Convert.ToByte(value);
            
return  ( int )b;
        } 

    }

到这里就和上一篇形成了一个完整的demo了,Demo预览

送上视频 :)

ViewManagerP2.wmv

 

 

 

 

【代码下载】

 

 

基于Cairngorm的Silverlight开发 - part3

相关文章
|
C# 前端开发
silverlight,WPF动画终极攻略之阳光灿烂篇(Blend 4开发)
原文:silverlight,WPF动画终极攻略之阳光灿烂篇(Blend 4开发) 前面我们画了一只会飞动的小鸟,今天我们在目标是一个会发光的太阳。本章节的动画虽然简单,但是实现的效果可是一点也不打折。
1232 0
|
C#
silverlight,WPF动画终极攻略之会飞的小鸟篇(Blend 4开发)
原文:silverlight,WPF动画终极攻略之会飞的小鸟篇(Blend 4开发) 本教程基本涵盖了WPF和silverlight中的各种动画。先上张效果图。 声明下,这个做的不是让大家照搬的,只是让大家熟悉下动画效果,这个成品基本涵盖了sl里面所有的动画效果。
1471 0
|
C#
silverlight,WPF动画终极攻略之迟来的第三章 动画整合篇(Blend 4开发)
原文:silverlight,WPF动画终极攻略之迟来的第三章 动画整合篇(Blend 4开发) 有个问题想请教下大家,我仿了腾讯的SL版QQ,相似度95%以上。我想写成教程教大家怎么开发出来,会不会有版权什么问题的。
1275 0
|
前端开发 C#
silverlight,WPF动画终极攻略之白云飘,坐车去旅游篇(Blend 4开发)
原文:silverlight,WPF动画终极攻略之白云飘,坐车去旅游篇(Blend 4开发) 这章有点长,所以我分成了两章。这一章主要是准备工作,差不多算美工篇吧,这章基本不会介绍多少动画效果,主要讲的是blend中工具的使用,利用哪些工具做出哪些效果。
1328 0
|
前端开发 C#
silverlight,WPF动画终极攻略之番外 3D切换导航篇(Blend 4开发)
原文:silverlight,WPF动画终极攻略之番外 3D切换导航篇(Blend 4开发) 这篇介绍的是3D导航,点击图标,页面360°翻转的效果!有什么不足的欢迎大家指出来。 1.新建一个usercontrol,命名为menu. 2.按照下图设置一下属性。
1325 0
|
自然语言处理 网络协议 数据格式
|
数据库 测试技术 安全
使用Entity Framework和WCF Ria Services开发SilverLight之2:POCO
在上一篇中《使用Entity Framework和WCF Ria Services开发SilverLight之1:简单模型》我们提出这类简单模型的几个问题: 1:实体模型被紧耦合在EDM中,同时它不能项目(模块)使用。
1294 0

热门文章

最新文章