真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

mvvm框架中icommand的用法

本文將為大家詳細介紹mvvm框架中icommand的用法,代碼詳細步驟清晰,細節(jié)處理妥當(dāng),希望大家通過這篇文章有所收獲,我們先來看看ICommand接口類的實現(xiàn):

創(chuàng)新互聯(lián)建站2013年開創(chuàng)至今,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目成都網(wǎng)站建設(shè)、成都做網(wǎng)站網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元阿巴嘎做網(wǎng)站,已為上家服務(wù),為阿巴嘎各地企業(yè)和個人服務(wù),聯(lián)系電話:028-86922220

public class RelayCommand : ICommand
    {
        private Action _execute;
        private Predicate _canExecute;

        public RelayCommand(Action execute, Predicate canExecute)
        {
            this._execute = execute;
            this._canExecute = canExecute;
        }

        public event EventHandler CanExecuteChanged
        {
            add
            {
                CommandManager.RequerySuggested += value;
            }
            remove
            {
                CommandManager.RequerySuggested -= value;
            }
        }

        public bool CanExecute(object parameter)
        {
            return _canExecute(parameter);
        }

        public void Execute(object parameter)
        {
            _execute(parameter);
        }
    }

在viewmodel中添加

void UpdateExecute()
        {
            Console.WriteLine("ICommandExecute");
        }
        bool CanUpdateExecute()
        {
            return true;
        }

        private ICommand _doSomething;

        public ICommand DoSomething
        {
            get
            {
                if (_doSomething == null)
                {
                    _doSomething = new RelayCommand(p => this.UpdateExecute(), p => this.CanUpdateExecute());
                }
                return _doSomething;
            }
        }

在xaml中用Command來綁定
假設(shè)我們用的是RadioButton

注意:

Binding DataContext.DoSomething

這里要用DataContext.
然后要設(shè)置一下RelativeSource
不然找不到這個方法會輸出錯誤信息

關(guān)于ICommand接口類的實現(xiàn)就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。


本文標題:mvvm框架中icommand的用法
文章路徑:http://weahome.cn/article/iijido.html

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部