日期:2014-05-17  浏览次数:20922 次

【C# Textbox 获得焦点的问题???】
Textbox里面有默认值 0.  当Textbox获得焦点时(用户按Tab键获得焦点或者是用鼠标获得焦点),清除默认值 0,如果Textbox失去焦点,保留用户输入的新值,如果为空就还原默认值0,这两种获得焦点同时要怎么实现?有很多 Textbox 文本框,都想要实现这样的功能,谁知道要怎么做呀?最好详细一点!谢谢。

------解决方案--------------------
        public Form2()
        {
            InitializeComponent();
            // 初始化所有TextBox光标事件
            initialTextBox();
        }

        /// <summary>
        /// 失去焦点
        /// </summary>
        void textBoxLostFocus(object sender, EventArgs e)
        {
            LostFocus(sender as TextBox);
        }
        private void LostFocus(TextBox txtbox)
        {
            if (string.IsNullOrEmpty(txtbox.Text))
            {
                txtbox.Text = "0";
            }
        }
        /// <summary>
        /// 获得焦点
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void textBoxGotFocus(object sender, EventArgs e)
        {
            GotFocus(sender as TextBox);
        }
        private void GotFocus(TextBox txtbox)
        {
            if (txtbox.Text == "0")
                txtbox.Text = "";
        }
        /// <summary>
        ///  实例化所有TextBox光标事件
        /// </summary>
        private void initialTextBox()
        {
            foreach (Control con in this.Controls)
            {
             &nbs