Windows Phone 下ViewModel直接獲取View下的控件

WP開發,在使用MVVM時有時候想直接在ViewModel下獲取View的控件,那怎麼獲取呢,請看下文。


1. 在VM中添加以下代碼

        public object getView { get; set; }
        public MainVM(object host)
        {
            getView = host;

            //調用MainPage的btn(這是MainPage 界面下的Button的名字)的時候
            //var text = ((MainPage)(getView)).btn.Content.ToString();
        }

2.在MainPage.cs中添加以下代碼

        public MainVM Main;
        // 構造函數
        public MainPage()
        {
            InitializeComponent();
            this.Main = new MainVM(this);
            this.DataContext = Main;
        }

3.在ViewModel中想要調用的時候就這樣寫 ((MainPage)(getView)).XXX(控件名).(屬性)

var text = ((MainPage)(getView)).btn.Content.ToString();










發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章