亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

DependencyProperty使用中的3個場景,討論Prope

系統 1678 0

1:項目結構圖

image

2:控件SilverlightControl1

前臺:

image

后臺:

        public partial class SilverlightControl1 : UserControl

    {

        public SilverlightControl1()

        {

            InitializeComponent();

        }



        public static readonly DependencyProperty StudentProperty = DependencyProperty.Register("Student", typeof(Student), typeof(SilverlightControl1), new PropertyMetadata(new PropertyChangedCallback(xxx)));



        public Student Student

        {

            get

            {

                return (Student)GetValue(StudentProperty);

            }

            set

            {

                SetValue(StudentProperty, value);

                

            }

        }



        static void xxx(DependencyObject d, DependencyPropertyChangedEventArgs e)

        {

            MessageBox.Show("sss");

        }

    }
  

3:調用方

前臺:

image

后臺:

        public partial class MainPage : UserControl

    {

        public MainPage()

        {

            InitializeComponent();

        }



        Student student1 = new Student() { StudentName = "hzh" + DateTime.Now.ToFileTime(), Age = 99 };

        Student student2 = new Student() { StudentName = "lmj" + DateTime.Now.ToFileTime(), Age = 99 };

        Student student3 = new Student() { StudentName = "lh" + DateTime.Now.ToFileTime(), Age = 99 };



        //初始化

        private void Button_Click(object sender, RoutedEventArgs e)

        {

            //采用非綁定機制

            uc1.Student = student1;

            //采用非綁定機制,對DataContext賦值

            uc2.DataContext = student2;

            //采用綁定機制

            uc3.DataContext = student3;

        }



        //改Model值

        private void Button_Click1(object sender, RoutedEventArgs e)

        {

            student1.StudentName = "lmj" + DateTime.Now.ToString();

            student1.Age = 90;

            student2.StudentName = "hzh" + DateTime.Now.ToString();

            student2.Age = 90;

            student3.StudentName = "hzh" + DateTime.Now.ToString();

            student3.Age = 90;

        }



        //更換Model

        private void Button_Click_1(object sender, RoutedEventArgs e)

        {

            student1 = new Student() { StudentName = "hzh" + DateTime.Now.ToFileTime(), Age = 99 };

            student2 = new Student() { StudentName = "lmj" + DateTime.Now.ToFileTime(), Age = 99 };

            student3 = new Student() { StudentName = "lh" + DateTime.Now.ToFileTime(), Age = 99 };

        }

    }
  

4:結論

無論是第一種方式,還是第三種方式,都能觸發PropertyChangedCallback,而如果調用采用第二種方式,則不會觸發PropertyChangedCallback。

源碼: SilverlightApplication320110609.rar

DependencyProperty使用中的3個場景,討論PropertyChangedCallback


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 国产激情在线 | 日本精品一区二区三区在线 | 精品96在线观看影院 | 色姝影院免费 | 奇米影视亚洲狠狠色 | 日本高清不卡网站免费 | 精品久久久久久中文字幕 | 亚洲高清资源在线观看 | 国产成人精品视频 | 亚洲成人伊人网 | 久久一本精品久久精品66 | 国产91一区二这在线播放 | 99国产高清久久久久久网站 | 日韩欧美一级毛片精品6 | 中文字幕免费视频精品一 | 99热网址 | 综合黄色| 精品久久久久久乐 | 久久精品五月天 | 一区二区三区视频网站 | 日韩 欧美 自拍 在线 视频 | 欧日韩不卡在线视频 | 四虎最新网址 | 豆国产97在线 | 中国 | 日韩在线第二页 | 国产成人精品日本亚洲直接 | 色播影院性播影院私人影吧 | 操操操日日日 | 亚洲一级生活片 | 国产福利在线免费 | 国产精品11页 | 曹逼视频| 久久频精品99香蕉国产 | 天天躁天天碰天天看 | 国产精品第二页在线播放 | 精品久久中文久久久 | 一区二区三区四区在线 | 午夜免费看 | 久久99精品久久久久子伦 | 成人午夜精品久久久久久久小说 | 天天干天天做 |