Silverlight使用笔记

1. ItemsSource绑定写法,此写法可为一个页面绑定多个对象
  ItemsSource
="{Binding QuoteItems, Source={StaticResource QIViewModel}}"

2. Style需合并到App.xaml
   Style合并
    <Application.Resources>
        <ResourceDictionary>
            <ResourceDictionary.MergedDictionaries>
                <ResourceDictionary Source="Assets/Styles.xaml"/>
                <ResourceDictionary Source="Style.xaml" />
            </ResourceDictionary.MergedDictionaries>
        </ResourceDictionary>
    </Application.Resources>
 
 
3. INotifyPropertyChanged
  虽然看过INotifyPropertyChanged的相关资料,但其实一直没搞清楚他的真正作用,做了个测试,请看下面的代码,Product类有Id和Name属性。
  [1] Name属性注释掉RaisePropertyChanged(new PropertyChangedEventArgs("Name")),可以得到Name的值,这点说明只要类的属性与控件binding,那么就可以获取到在页面输入的值。
  [2] 我们在页面放置两个控件:textbox,textblock,并将text都绑定为product的name属性,在textbox中输入的name值没有反应到textblock上的,
去掉
注释,textblock的文本跟随改变,这说明INotifyPropertyChanged的作用是:通知UI更新数据
   Product
public class Product : INotifyDataErrorInfo, INotifyPropertyChanged
    {
        public Product()
        {
        }

        private int idValue;
        public int Id
        {
            get { return idValue; }
            set
            {
                if (IsIdValid(value) && idValue != value)
                {
                    idValue = value;
                    RaisePropertyChanged(new PropertyChangedEventArgs("Id"));
                }
            }
        }

        private string nameValue;
        public string Name
        {
            get { return nameValue; }
            set
            {
                if (IsNameValid(value) && nameValue != value)
                {
                    nameValue = value;
                }
                //RaisePropertyChanged(new PropertyChangedEventArgs("Name"));
            }
        }
        //以下代码省略
}

 

 

转载于:https://www.cnblogs.com/luhe/archive/2012/10/24/2737351.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值