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();










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