不卡视频在线观看_三级网站视频在线观看_91精品网站_国产综合一区二区

完善主體資料,免費(fèi)贈送VIP會員!
* 主體類型
* 企業(yè)名稱
* 信用代碼
* 所在行業(yè)
* 企業(yè)規(guī)模
* 所在職位
* 姓名
* 所在行業(yè)
* 學(xué)歷
* 工作性質(zhì)
請先選擇行業(yè)
您還可以選擇以下福利:
行業(yè)福利,領(lǐng)完即止!

下載app免費(fèi)領(lǐng)取會員

NULL

ad.jpg

二次開發(fā)教程:ICommand接口

發(fā)布于:2019-07-25 15:12:08

網(wǎng)友投稿

更多

    // 摘要:

    //     Defines a command.

    public interface ICommand

    {

        //

        // 摘要:

        //     Occurs when changes occur that affect whether or not the command should execute.

        event EventHandler CanExecuteChanged;


        //

        // 摘要:

        //     Defines the method that determines whether the command can execute in its current

        //     state.

        //

        // 參數(shù):

        //   parameter:

        //     Data used by the command. If the command does not require data to be passed,

        //     this object can be set to null.

        //

        // 返回結(jié)果:

        //     true if this command can be executed; otherwise, false.

        bool CanExecute(object parameter);

        //

        // 摘要:

        //     Defines the method to be called when the command is invoked.

        //

        // 參數(shù):

        //   parameter:

        //     Data used by the command. If the command does not require data to be passed,

        //     this object can be set to null.

        void Execute(object parameter);


上面這個是ICommand包含的類容,通過一個小例子來說明她的使用方法,


首先在Window里添加一個Button和一個Textbox,給Button綁定一個命令,給Text box綁定一個int數(shù)字,當(dāng)int 數(shù)字小于0是Button不可用。


首先創(chuàng)建命令:


    public class OK_Command : ICommand

    {

        private ViewModel _vm = null;

        public OK_Command(ViewModel vm)

        {

            _vm = vm;

        }

        public event EventHandler CanExecuteChanged;

        public void RaiseCanExecuteChanged()

        {

            if(CanExecuteChanged!=null)

            {

                CanExecuteChanged(this, EventArgs.Empty);

            }

        }

        public bool CanExecute(object parameter)

        {

            if (_vm.Num < 0)

                return false;

            return true;

        }

        public void Execute(object parameter)

        {

            MessageBox.Show("OK");

        }

    }


創(chuàng)建View Model:


    public class ViewModel : INotifyPropertyChanged

    {

        private int _num = 0;

        public int Num

        {

            get

            {

                return _num;

            }

            set

            {

                _num = value;

                RaisePropertyChanged(nameof(Num));

                RaisePropertyChanged((nameof(OK_Command)));

            }

        }


        private OK_Command _okCommand = null;

        public OK_Command OK_Command

        {

            get

            {

                if(_okCommand ==null)

                {

                    _okCommand = new OK_Command(this);

                }

                _okCommand.RaiseCanExecuteChanged();

                return _okCommand;

            }

        }


        public event PropertyChangedEventHandler PropertyChanged;

        private void RaisePropertyChanged(string name)

        {

            if(PropertyChanged!=null)

            {

                PropertyChanged(this, new PropertyChangedEventArgs(name));

            }

        }

    }




在Window里添加Button和TextBox 并設(shè)置綁定路徑


<Window x:Class="ICommandDemo.MainWindow"

        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"

        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"

        xmlns:local="clr-namespace:ICommandDemo"

        mc:Ignorable="d"

        Title="MainWindow" Height="350" Width="525">

    <Grid>

        <Button x:Name="button" Command="{Binding Path=OK_Command}" Content="Button" HorizontalAlignment="Left" Margin="334,268,0,0" VerticalAlignment="Top" Width="75"/>

        <TextBox x:Name="textBox" HorizontalAlignment="Left" Height="23" Margin="288,176,0,0" TextWrapping="Wrap" Text="{Binding Path= Num,UpdateSourceTrigger=PropertyChanged}" VerticalAlignment="Top" Width="120"/>

    </Grid>

</Window>




最后在Window啟動設(shè)置Data Context


    public partial class MainWindow : Window

    {

        public MainWindow()

        {

            InitializeComponent();

            DataContext = new ViewModel();

        }

    }

本文版權(quán)歸腿腿教學(xué)網(wǎng)及原創(chuàng)作者所有,未經(jīng)授權(quán),謝絕轉(zhuǎn)載。

未標(biāo)題-1.jpg

上一篇:二次開發(fā)教程:C# 弱事件

下一篇:二次開發(fā)教程:WPF 模板選擇器

60acb4e0ef112.png
不卡视频在线观看_三级网站视频在线观看_91精品网站_国产综合一区二区

      亚洲国产高潮在线观看| 欧美日韩在线播| 麻豆成人小视频| 另类激情亚洲| 欧美日韩第一区| 国产精品入口| 亚洲激情自拍| 亚洲欧美国产另类| 久久久久久电影| 欧美日韩www| 国产欧美在线| 亚洲美女黄色| 久久精品卡一| 欧美日韩在线另类| 国产自产精品| 妖精成人www高清在线观看| 欧美一区二区大片| 欧美日韩免费观看一区二区三区| 国产精品拍天天在线| 亚洲第一成人在线| 羞羞答答国产精品www一本| 久久综合九色综合久99| 欧美四级伦理在线| 激情久久一区| 亚洲欧美一区二区原创| 欧美国产高清| 激情欧美丁香| 欧美一区二区啪啪| 欧美色视频日本高清在线观看| 国产一区二区三区免费在线观看 | 在线综合亚洲欧美在线视频| 久久超碰97中文字幕| 欧美日韩在线一区二区三区| 亚洲成人在线视频网站| 亚洲欧美视频在线观看| 欧美丝袜第一区| 亚洲国产欧美国产综合一区| 欧美在线视频不卡| 国产精品初高中精品久久| 亚洲人永久免费| 久久天堂国产精品| 国产区日韩欧美| 亚洲欧美视频在线| 欧美日韩一区在线观看| 亚洲青涩在线| 欧美国产日韩一区二区在线观看| 在线观看国产成人av片| 久久精品国产999大香线蕉| 国产精品国产三级国产专播品爱网 | 亚洲精品久久久一区二区三区| 欧美在线不卡| 国产一区二区三区直播精品电影| 亚洲欧美日本国产专区一区| 欧美性淫爽ww久久久久无| 日韩视频在线一区二区| 欧美日韩爆操| 99在线|亚洲一区二区| 欧美成人自拍视频| 亚洲精选久久| 欧美午夜欧美| 午夜精品一区二区三区电影天堂| 欧美午夜精品久久久久久孕妇| 亚洲精品婷婷| 欧美午夜精品久久久久免费视| 一区二区免费在线视频| 国产精品久久久久久久久久免费 | 老司机成人在线视频| 国产一区二区精品久久99| 欧美一区二区三区精品| 国产综合久久久久久鬼色| 久久久噜噜噜久久| 亚洲二区在线观看| 欧美精品亚洲精品| 国产精品99久久久久久久vr| 国产精品电影网站| 欧美一区二区三区在线免费观看| 国产在线精品成人一区二区三区 | 在线看片一区| 欧美精品在线一区二区| 一本久道久久综合狠狠爱| 欧美午夜免费电影| 欧美一区二区三区四区视频| 国一区二区在线观看| 欧美一区二区三区四区夜夜大片| 国产精品毛片大码女人| 久久精品国产免费| 99在线精品视频| 国产女人精品视频| 欧美成人精品h版在线观看| 亚洲视频在线观看| 狠狠久久亚洲欧美专区| 欧美日韩不卡| 久久精品国产亚洲aⅴ| 亚洲欧洲精品成人久久奇米网| 欧美少妇一区| 久久噜噜噜精品国产亚洲综合| 亚洲精品久久久久久久久久久久| 国产精品色网| 欧美精品一区二区三区蜜桃| 亚洲欧美日本精品| 亚洲国产天堂久久国产91| 国产精品免费观看在线| 免费不卡视频| 欧美一区二区三区久久精品| 亚洲三级国产| 在线播放国产一区中文字幕剧情欧美 | 亚洲国产一区二区三区a毛片 | 国产日韩欧美一区在线| 欧美高清成人| 久久综合色婷婷| 性色av一区二区怡红| 一区二区三区精品久久久| 在线免费观看欧美| 国产日韩在线亚洲字幕中文| 欧美日韩在线电影| 欧美电影在线| 免费中文字幕日韩欧美| 久久久国产91| 欧美一区二区女人| 亚洲欧美另类国产| 中文成人激情娱乐网| 91久久亚洲| 亚洲精品国产精品国产自| 黄色日韩网站视频| 国产一区二区久久久| 国产精品任我爽爆在线播放| 欧美日韩视频一区二区三区| 欧美国产日产韩国视频| 快射av在线播放一区| 久久视频国产精品免费视频在线| 欧美一区二区三区的| 香蕉久久夜色| 欧美一级淫片aaaaaaa视频| 亚洲视频在线观看视频| 亚洲特黄一级片| 亚洲制服丝袜在线| 亚洲一区在线免费观看| 亚洲一区影音先锋| 亚洲欧美日韩国产| 午夜欧美精品| 欧美一区二区国产| 久久久久久久久久久一区 | 欧美视频导航| 欧美日韩综合在线| 国产精品美女一区二区| 国产精品亚洲第一区在线暖暖韩国| 欧美婷婷六月丁香综合色| 国产精品久久久久高潮| 国产欧美精品va在线观看| 国产日韩在线视频| 精品1区2区3区4区| 亚洲理论在线观看| 亚洲宅男天堂在线观看无病毒| 午夜一区二区三区不卡视频| 久久精品麻豆| 欧美黄色视屏| 国产精品老女人精品视频| 国产日产精品一区二区三区四区的观看方式| 国产欧美日本一区二区三区| 国自产拍偷拍福利精品免费一| 亚洲国产你懂的| 亚洲一区二区久久| 久久婷婷蜜乳一本欲蜜臀| 欧美日韩另类综合| 国产在线拍揄自揄视频不卡99 | 久久久久**毛片大全| 欧美成人精品高清在线播放| 国产精品成人国产乱一区| 狠狠色丁香久久婷婷综合_中| 亚洲经典一区| 久久精品国产免费观看| 欧美激情影院| 国产亚洲欧美一区二区| 亚洲另类一区二区| 欧美专区福利在线| 欧美精品一区二区三区久久久竹菊| 国产精品久久久久一区| 亚洲国产老妈| 欧美在线看片| 欧美伦理在线观看| 激情另类综合| 欧美在线不卡视频| 欧美视频一区二区在线观看 | 玉米视频成人免费看| 在线一区二区三区四区五区| 久久综合色综合88| 国产亚洲欧美日韩精品| 日韩一级在线| 欧美成人免费网站| 一区免费在线| 亚洲欧美在线观看| 欧美日韩天堂| 亚洲人成久久| 久久这里只有| 激情综合中文娱乐网| 亚洲欧美日本另类| 欧美视频在线观看免费| 亚洲国产精品一区二区久| 欧美一区二区三区免费在线看 | 狠狠色狠狠色综合日日tαg|