【C# Textbox 获得焦点的问题???】

junoveia 2013-03-26 10:25:52
Textbox里面有默认值 0. 当Textbox获得焦点时(用户按Tab键获得焦点或者是用鼠标获得焦点),清除默认值 0,如果Textbox失去焦点,保留用户输入的新值,如果为空就还原默认值0,这两种获得焦点同时要怎么实现?有很多 Textbox 文本框,都想要实现这样的功能,谁知道要怎么做呀?最好详细一点!谢谢。
...全文
902 37 打赏 收藏 转发到动态 举报
写回复
用AI写文章
37 条回复
切换为时间正序
请发表友善的回复…
发表回复
sby5104 2014-08-21
  • 打赏
  • 举报
回复
自己实现水印效果吗
搬砖的码农 2013-03-27
  • 打赏
  • 举报
回复
还掉了

        private void TxtBox_Enter(object sender, EventArgs e)
        {
            TextBox tb = (TextBox)sender;
            if(tb.Text == "0")
                tb.Text = "";
        }
搬砖的码农 2013-03-27
  • 打赏
  • 举报
回复
private void FrmTrustTest_Load(object sender, EventArgs e)
        {
            textBox4.Enter += new EventHandler(TxtBox_Enter);
            textBox4.Leave += new EventHandler(TxtBox_Leave);    
            //同理添加你要的TextBox
        }

        private void TxtBox_Leave(object sender, EventArgs e)
        {
            TextBox tb = (TextBox)sender;
            if (tb.Text.Trim() == "")
                tb.Text = "0";
        }
exception92 2013-03-27
  • 打赏
  • 举报
回复
引用 11 楼 duanzi_peng 的回复:
public Form2() { InitializeComponent(); // 初始化所有TextBox光标事件 initialTextBox(); } /// <summary> /// 失去焦点……
这样详细不??lz
exception92 2013-03-27
  • 打赏
  • 举报
回复
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) { if (con is TextBox) { con.GotFocus += textBoxGotFocus; con.LostFocus += textBoxLostFocus; } } }
junoveia 2013-03-27
  • 打赏
  • 举报
回复
引用 5 楼 zhurcn 的回复:
引用 3 楼 junoveia 的回复: 引用 2 楼 zhurcn 的回复:在TextBox的Enter事件里添加清空代码,在Leaver事件里添加判断赋值代码。。。 这样我试过,当用户按Tab键时 不管用,Tab要怎么样也设置才可以有这样的功能呢???不管用!!!能啊,刚才我还特地试了。。。
要是有多个textbox 要怎么设置才可以调用同一个事件啊?
天涯洪七公 2013-03-27
  • 打赏
  • 举报
回复
你设置了tab的优先级没有
菜鸟之极 2013-03-27
  • 打赏
  • 举报
回复
我的那个想法是错误的,你按照zhurcn的方法来做吧,不好意思
  • 打赏
  • 举报
回复
private void Form4_Load(object sender, EventArgs e) { textBox1.GotFocus += textGotFocus; textBox1.LostFocus += textLostFocus; } private void textGotFocus(object sender, EventArgs e) { TextBox txt = sender as TextBox; //逻辑处理 } private void textLostFocus(object sender, EventArgs e) { TextBox txt = sender as TextBox; //逻辑处理 } 所有的text都绑定这两个方法就可以了。 用sender去处理保留还是清除。。
信丰小飞鱼 2013-03-27
  • 打赏
  • 举报
回复
public Form1() { InitializeComponent(); this.textBox1.GotFocus += textBox1_GotFocus; this.textBox1.LostFocus += textBox1_LostFocus; } void textBox1_LostFocus(object sender, EventArgs e) { if (string.IsNullOrEmpty(this.textBox1.Text)) this.textBox1.Text = "0"; } void textBox1_GotFocus(object sender, EventArgs e) { if (this.textBox1.Text.Equals("0")) this.textBox1.Text = string.Empty; }
搬砖的码农 2013-03-27
  • 打赏
  • 举报
回复
引用 3 楼 junoveia 的回复:
引用 2 楼 zhurcn 的回复:在TextBox的Enter事件里添加清空代码,在Leaver事件里添加判断赋值代码。。。 这样我试过,当用户按Tab键时 不管用,Tab要怎么样也设置才可以有这样的功能呢???
不管用!!!能啊,刚才我还特地试了。。。
junoveia 2013-03-27
  • 打赏
  • 举报
回复
引用 1 楼 cangyingjj 的回复:
if(textbox.focuse==true) { }
你好,你说的这个是在textbox的哪个事件里用啊??
junoveia 2013-03-27
  • 打赏
  • 举报
回复
引用 2 楼 zhurcn 的回复:
在TextBox的Enter事件里添加清空代码,在Leaver事件里添加判断赋值代码。。。
这样我试过,当用户按Tab键时 不管用,Tab要怎么样也设置才可以有这样的功能呢???
搬砖的码农 2013-03-27
  • 打赏
  • 举报
回复
在TextBox的Enter事件里添加清空代码,在Leaver事件里添加判断赋值代码。。。
菜鸟之极 2013-03-27
  • 打赏
  • 举报
回复
if(textbox.focuse==true) { }
junoveia 2013-03-27
  • 打赏
  • 举报
回复
引用 33 楼 duanzi_peng 的回复:
[quote=引用 32 楼 junoveia 的回复:] 散分。。。。。。。。
散分 是什么意思呀??[/quote] wokao。。。Lz新手。。结贴啊。[/quote] 结完了,谢谢你的帮助
huozeishen 2013-03-27
  • 打赏
  • 举报
回复
<asp:TextBox Text="输入机构名称搜索" ID="bmTb" CssClass="dataViewinput" runat="server" Width="240px" Height="18px" onfocus="if(this.value==this.defaultValue)this.value='';this.style.color = '';" onblur="if(this.value.replace(/ /ig,'')=='')this.value=this.defaultValue;if(this.value=='输入机构名称搜索') this.style.color = '#C0C0C0'; ;"></asp:TextBox> 其余的你自己改改 我碰巧看到
junoveia 2013-03-27
  • 打赏
  • 举报
回复
引用 33 楼 duanzi_peng 的回复:
[quote=引用 32 楼 junoveia 的回复:] 散分。。。。。。。。
散分 是什么意思呀??[/quote] wokao。。。Lz新手。。结贴啊。[/quote] 我是新人,第一次用,在哪里可以结帐啊?点哪里呢?
exception92 2013-03-27
  • 打赏
  • 举报
回复
引用 32 楼 junoveia 的回复:
散分。。。。。。。。
散分 是什么意思呀??[/quote] wokao。。。Lz新手。。结贴啊。
junoveia 2013-03-27
  • 打赏
  • 举报
回复
散分。。。。。。。。[/quote] 散分 是什么意思呀??
加载更多回复(17)

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧