• TextBox控件


    1、通过设置Multiline属性(bool)来控制文本框是否为多行显示

    txt_Change.Location = new Point(0, 0);//设置文本框位置
    txt_Change.Multiline = true;//设置文本框显示多行

    2、通过设置PasswordChar属性来密码显示

    txt_Change.PasswordChar = '*';//设置屏蔽字符
    txt_Change.PasswordChar = (char)0;//取消屏蔽  输出字符

    3、文本框中换行

    txt_Str.Text = string.Format( "C#编程词典{0}C#编程宝典{0}C#范例宝典{0}C#视频学", Environment.NewLine);

    4、判断用户输入的是否是汉字或者数字

            private void txt_Str_KeyPress(object sender, KeyPressEventArgs e)
            {
                if (!char.IsDigit(e.KeyChar))//判断是否为数字
                  {
                    MessageBox.Show("请输入数字!","提示!",//弹出消息对话框
                        MessageBoxButtons.OK,MessageBoxIcon.Information);
                    e.Handled = true;//取消在控件中显示该字符
                }
            }
    //e.KeyChar 该属性用于获取或设置按下键对应的字符
    //IsDigit()方法只是某个字符是否属于十进制数字类别 IsLetter()方法判断字符是否是字母
    //e.Handled 该属性用来获取或设置一个bool值,该值只是是否处理过System.Windows.Forms.Control.KeyPress时间,属性为true时表示处理过该事件,
    这样可以取消用户在TextBox按键的值

     5、代码积累

               foreach(Control c in this.Controls)
                {
                    if (c.GetType().Name == "TextBox")
                    {
                        if (((TextBox)c).Text.Trim() == "")
                        {
                            MessageBox.Show("不允许为空");
                            c.Focus();
                        }
                    }
                }
    Control类是Form和各种Windows 窗体控件设备的基类,属于System.Windows.Forms命名空间,每个window控件设备都有一个Controls属性,这个属性为ControlCollection类型,
    ControlCollection为一个Control对象的集合,包含的是属于某个控件的所有控件对象,利用Control和ControlCollection我们可以轻松地对某个窗体程序所含的各种控件进行控制。
    当我们开发具有录入功能的界面的时候,为了防止提交后的二次(重复)录入,希望点击提交按钮并提示成功后,界面的所有文本框能够自动清空,一个笨方法是逐个的对TextBox进行Clear()
    操作,这种方法会产生大量的代码,并且效率很低。 对于上面所述的清空操作,可以仔细想一想,既然每个窗体控件都是继承自Control类,并且含有Controls属性,那利用Control和ControlCollection,利用函数的层层递归,就可以轻松
    实现Clear()操作,代码如下:
    private void Process(Control.ControlCollection c) { if (c.Count>0) { foreach (Control c1 in c) { if (c1.GetType().ToString().Equals("System.Windows.Forms.TextBox")) { ((TextBox)c1).Clear(); } if (c1 != null) { Process(c1.Controls); } else { return; } } } else { return; } } 只需令Process()函数的参数为this.Controls,该函数就会层层遍历,先查找直接放在Form中的TextBox,再遍历到Panel(如果有的话),查找Panel中的TextBox,
    如果Panel中还有其他控件,就接着查找下一层次中的控件是否有Textbox,找到以后执行Clear()函数即可。这只是一个例子,利用这种形式的函数,我们可以对窗体控
    件进行很多种形式的控制。

     WPF

    TextBox通过TextWrapping属性支持换行

     <TextBox Name="txtA" TextWrapping="WrapWithOverflow"></TextBox>
  • 相关阅读:
    Asible——inventory与大项目管理
    Asible——template
    Ansible——文件管理
    Ansible——处理任务失败
    Ansible——handlers与notify
    ubuntu 16.04 LTS 开发环境的安装及常用软件
    curl 命令详解
    VMware虚拟机三种网络模式详解
    ubantu 16.04 安装有道词典
    OneNote 使用汇总
  • 原文地址:https://www.cnblogs.com/chenyongblog/p/3233964.html
Copyright © 2020-2023  润新知