C# 问题: 有N个textbox框,在输入其中一个文本内容时,其它的 textbox 中的文本内容如何自动清除?

 我来答
fujie724
2011-05-19 · TA获得超过1187个赞
知道小有建树答主
回答量:154
采纳率:100%
帮助的人:277万
展开全部
你要问的应该是窗体编程的吧?
这个问题可以这么解决。比如我有5个textbox放在窗体上。
那么可以指定这5个textbox的事件都是同一个。
先在构造函数中写:

textBox1.TextChanged += new EventHandler(TextBox_TextChanged);
textBox2.TextChanged += new EventHandler(TextBox_TextChanged);
textBox3.TextChanged += new EventHandler(TextBox_TextChanged);
textBox4.TextChanged += new EventHandler(TextBox_TextChanged);
textBox5.TextChanged += new EventHandler(TextBox_TextChanged);
为5个textbox都添加同一个TextBox_TextChanged()事件函数。然后在TextBox_TextChanged函数的内容为

void TextBox_TextChanged(object sender, EventArgs e)
{
//循环窗体中的每一个控件
foreach (Control ctl in this.Controls)
{
//如果循环到的控件是当前输入文本的textbox则跳过
if (ctl.Name == (sender as Control).Name)
continue;
else
{
//否则,先判断是不是textbox控件
if (ctl is TextBox)
{
//如果是,则清空控件的值
(ctl as TextBox).Clear();
}
}
}
}
lqzcliff
2011-05-19 · TA获得超过368个赞
知道小有建树答主
回答量:460
采纳率:0%
帮助的人:240万
展开全部
如果是WINFORM,这样处理就行了
private void ClearText(string textName)
{
foreach(Control t in this.Controls)
{
if(((System.Type)(t.GetType())).ToString() == "System.Windows.Forms.TextBox")
{
if(((System.Windows.Forms.TextBox)(t)).Name != textName && ((System.Windows.Forms.TextBox)(t)).Focused == false)
{
((System.Windows.Forms.TextBox)(t)).Text = "";
}
}
}
}
在你的窗体里添加这个方法,然后在每个要控制的文本框TextChanged事件里添加下面这句就行了.
ClearText(((System.Windows.Forms.TextBox)(sender)).Name);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
kyo941251399
2011-05-19 · TA获得超过3466个赞
知道小有建树答主
回答量:2130
采纳率:0%
帮助的人:1408万
展开全部
TextChanged事件
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
我有有好多问题
2011-05-19 · TA获得超过488个赞
知道小有建树答主
回答量:151
采纳率:0%
帮助的人:182万
展开全部
<script type="text/javascript">
function change(textBox)
{
var items = document.getElementsByTagName("input");
for(i=0;i<items.length;i++)
{
if(items[i].type =="text" && items[i].id!=textBox.id )
items[i].value = "";
}
}
</script>
<input id="Text1" type="text" onchange="change(this)" />
<input id="Text2" type="text" onchange="change(this)" />
<input id="Text3" type="text" onchange="change(this)" />
<input id="Text4" type="text" onchange="change(this)" />
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
解忧解忧杂货铺
2011-05-19 · TA获得超过590个赞
知道小有建树答主
回答量:1536
采纳率:33%
帮助的人:696万
展开全部
if( onblur && !=null) { $(":text").val("")}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
欧阳幼菱
2011-05-20 · TA获得超过327个赞
知道小有建树答主
回答量:611
采纳率:100%
帮助的人:0
展开全部
delkaka 正解
不过最好加上判断条件
if(DialogResult.OK==openFileDialog.ShowDialog())
{
textbox.text=openfiledialog.filename;
}
这样只有在点确定的时候才显示

显示txt内容
using SystemIO:

StreamReader sr = new StreamReader(fileName, Encoding.UTF8);
textBox1.Text = sr.ReadToEnd();
sr.Close();
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式