wpf에서 명령 코드를 생성하여 비우는 명령을 실행합니다

5507 단어 WPF
using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Windows;

using System.Windows.Controls;

using System.Windows.Data;

using System.Windows.Documents;

using System.Windows.Input;

using System.Windows.Media;

using System.Windows.Media.Imaging;

using System.Windows.Shapes;



namespace wpf      

{

    /// <summary>

    /// Window1.xaml      

    /// </summary>

    public partial class Window1 : Window

    {



        

        public Window1()

        {

            InitializeComponent();

            InitCommand();



            if (string.IsNullOrEmpty(txt.Text))  //      

            {

                this.btn1.IsEnabled = false;

            }

            else



            {

                this.btn1.IsEnabled = true;

            }

            

        }

        RoutedCommand rc = new RoutedCommand("clear", typeof(Window1));

        public void InitCommand()

        {

            btn1.Command = rc;

            rc.InputGestures.Add(new KeyGesture(Key.C,ModifierKeys.Alt));  //     

            btn1.CommandTarget = txt;



            CommandBinding cb=new CommandBinding ()

            {

                Command =rc,

            };





            cb.CanExecute+=cb_CanExecute;

            cb.Executed += cb_Executed;



            sp.CommandBindings.Add(cb);

        }



        private void cb_CanExecute(object sender, CanExecuteRoutedEventArgs e)

        {

            if (string.IsNullOrEmpty(txt.Text))

            {

                e.CanExecute = false;

            }

            else

            {

                e.CanExecute = true;

            }

            e.Handled = true;

        }

        void cb_Executed(object sender, ExecutedRoutedEventArgs e)

        {

            txt.Clear();

            e.Handled = true;

        }

       



        private void Button_Click_1(object sender, RoutedEventArgs e)

        {



        }



    }

}

좋은 웹페이지 즐겨찾기