zoukankan      html  css  js  c++  java
  • WPF——执行命令清空文本框

    一、造一个窗体,在窗体里面先造一个StackPanel,然后再StackPanel里面放好按钮和文本框,注意给所有的控件和容器起名字

     <Grid>
            <StackPanel Name="Sp1" HorizontalAlignment="Left" Height="350" Margin="0" VerticalAlignment="Top" Width="525">
                <Button Name="btn1" Content="exeCommand" Height="41"/>
                <TextBox Name="TextBox1" Height="284" TextWrapping="Wrap" Text=""/>
            </StackPanel>
    
        </Grid>

    二、开始写命令 执行清空

     public partial class MainWindow : Window
        {
            public MainWindow()
            {
                InitializeComponent();
                mingling();
            }
    
            //上来需要声明并定义命令
            RoutedCommand Command = new RoutedCommand("清空",typeof(MainWindow)); //里面的两个参数第一个是名字,第二个是执行命令的类型
    
            //开始写命令函数
            public void mingling()
            { 
                //创建按钮的命令
                btn1.Command = Command;
    
                //定义快捷键
                Command.InputGestures.Add((new KeyGesture(Key.C,ModifierKeys.Alt))); //快捷键是Alt+C
    
                //指定按钮的命令目标
                btn1.CommandTarget = TextBox1;
    
                //创建命令关联
                CommandBinding cb = new CommandBinding() //CommandBinding:用于将命令和命令的安排逻辑链接起来,譬如同样的"粘贴",但粘贴文本和粘贴图片的解决逻辑是不一样的,
                {
                    Command = Command,
                };
                cb.CanExecute += cb_CanExecute; //CanExecute:当与该 CommandBinding 关联的命令启动检查以确定是否可以在命令目标上执行此命令时发生。
                cb.Executed+=cb_Executed; 
                Sp1.CommandBindings.Add(cb);
            }
    
            private void cb_Executed(object sender, ExecutedRoutedEventArgs e)
            {
                TextBox1.Clear(); //文本框清空
                e.Handled = true;//Handled:获取或设置一个值,该值指示是否处理过 KeyPress 事件。如果执行过,则为ture,否则为false
               
    
            }
    
            private void cb_CanExecute(object sender, CanExecuteRoutedEventArgs e)
            {
                if (string.IsNullOrWhiteSpace(TextBox1.Text))
                {
                    e.CanExecute = false;
                }
                else
                {
                    e.CanExecute = true;
                }
                e.Handled = true;
            }
        }

    三、点击按钮

    点击按钮前:

    点击按钮后:

  • 相关阅读:
    X、Y轴抖动的动画
    ViewFlipper的简单用法
    让手机连接到指定的WIFI网络,适用于之前已经连过的网络
    Eclipse 离线汉化的方法
    自己写的SeekBarPreference,可以实现seekbar滑动监听和设置默认进度和最大进度
    录制Android屏幕软件——屏幕录像专家
    【转】解决Android因加载多个大图引起的OutOfMemoryError,内存溢出的问题
    Java中的线程实现
    获得手机当前的ip地址
    操作Wifi的工具类
  • 原文地址:https://www.cnblogs.com/lk-kk/p/4608860.html
Copyright © 2011-2022 走看看