C# 如何让所有的textbox一起置零啊
就是弄个置零的按钮,点一下,然后所有的textbox一起归零 --------------------编程问答-------------------- 拖一个按钮,在这个按钮的click事件里面,将所有的textbox的text属性设置为“”是这个意思不? --------------------编程问答-------------------- 嗯,就是这个意思,要是一句句的写蛮麻烦 能不能用个循环什么的一起置零啊,控件蛮多~ --------------------编程问答--------------------
//这里页面所有textbox清空的方法
function SetTextBox()
{
var txts = document.getElementsByTagName('INPUT');
for(var i = 0; i < txts.length; i++)
{
if (txts[i].type.toUpperCase() == 'TEXT')
{
txts[i].value = "";
}
}
}
//按钮的onclick="SetTextBox()"
//如果是服务器按钮 OnClientClick="SetTextBox()"
--------------------编程问答-------------------- 可以拉一个<input />onclick事件调用一个JavaScript
用JavaScript遍历页面上的TextBox设置其值为:0 --------------------编程问答--------------------
LZ... 方法就是我3楼给你的。。手写的。。有小错见谅。。
PS:你记得要结帖啊。。你看你那结帖率。。惨不忍睹啊。。 --------------------编程问答--------------------
foreach (var i in Controls)--------------------编程问答--------------------
{
TextBox tb = i as TextBox;
if (tb != null) tb.Text = "0";
}
--------------------编程问答-------------------- 递归
foreach (Control aa in Page.Controls)
{
if (aa is TextBox )
{
TextBox tb = (TextBox )aa;
tb.Text = "";
}
}
--------------------编程问答-------------------- 遍历页面控件 设置文本为0 --------------------编程问答--------------------
public static void ResetTextBox(Control control)
{
if (control.HasChildren)
{
foreach (Control subControl in control.Controls)
{
if (subControl is TextBox)
(subControl as TextBox).Text = string.Empty;
else
ResetTextBox(subControl);
}
}
}
++ --------------------编程问答--------------------
3ku啦。本人初学好多问题不懂,谢谢各位大哥的指导~ --------------------编程问答-------------------- 我弱弱的问一句,怎么结贴啊,就点一下那个结贴就ok? --------------------编程问答-------------------- 问题问的不够详细,也没说是winform还是WPF程序,还是asp.net.还搞了个怎么结贴,哥们好无语。。。。。 --------------------编程问答-------------------- 顶! --------------------编程问答-------------------- 用遍历吧 将所有的textbox的值都="" --------------------编程问答-------------------- 后台就遍历 Controls
js就document.getElementByTagName() --------------------编程问答-------------------- 就遍历控件嘛 --------------------编程问答-------------------- 呵呵,遍历! --------------------编程问答--------------------
++ --------------------编程问答-------------------- public static void clear(Control.ControlCollection cs)
{
foreach (Control c in cs)
{
if (c is TextBox)
{
c.Text = "";
}
}
} --------------------编程问答-------------------- 这个蛮简单的...楼上的老大们的方法都不错.......顶下 --------------------编程问答--------------------
+1 循环遍历 --------------------编程问答-------------------- --------------------编程问答--------------------
这个不是递归吧,如果subcontrol的control的control里还有textbox呢? --------------------编程问答-------------------- 看错了,是递归 --------------------编程问答-------------------- --------------------编程问答-------------------- 遍历遍历!! --------------------编程问答-------------------- 这个可以。 --------------------编程问答-------------------- 这个就是遍力呀,没什么好说的,置为0 --------------------编程问答--------------------
--------------------编程问答-------------------- 结贴率0.00%??? --------------------编程问答-------------------- protected void SetEmpty()
foreach(Control c in this.Controls)
{
if(c is TextBox)
{
(c as TextBox).Text = "0";
}
}
{
try
{
foreach (Control ctrl in pnlIn.Controls)
{
Label lable = new Label();
if (ctrl.GetType() != lable.GetType())
{
ctrl.Text = 0;
}
}
}
} --------------------编程问答-------------------- $("input[type='text']").val(""); --------------------编程问答--------------------
递归不好!层太多效率低,易崩溃! --------------------编程问答-------------------- 如果是web的话,加一个 input type = "reset" --------------------编程问答-------------------- 可以用扩展控件的方法 --------------------编程问答-------------------- --------------------编程问答-------------------- 学习了,好像面试看到过这题 --------------------编程问答--------------------
--------------------编程问答-------------------- 人家才发了两张帖而已......而且不会结帖,这个才是关键........
foreach(Control c in this.Controls)
{
if(c is TextBox)
{
(c as TextBox).Text = "0";
}
}
除了这个还可以用容器,当然窗体也是个容器.方法多了
LZ点结帖,然后把分分配给你想给的人,再点确认结帖就行了 --------------------编程问答-------------------- 有控件容器类吧 foreach 一下应该开一吧 --------------------编程问答-------------------- 學習了. --------------------编程问答-------------------- 学习啦!!! --------------------编程问答-------------------- 遍历窗体中所有的butoon控件,楼上的都讲完了。。。 --------------------编程问答-------------------- 来学习来学习、 --------------------编程问答-------------------- 学习 学习。。。 --------------------编程问答-------------------- private void button1_Click(object sender, EventArgs e)
{
foreach (object item in this.Controls)
{
if (item is TextBox)
{
TextBox tt = item as TextBox;
tt.Text = "";
}
else
{
continue;
}
}
}
我这个方法比较简单,已经试过, 我是新手,勿笑. --------------------编程问答-------------------- 可以把所有textbox引用到一个数组里然后foreach循环清空把? --------------------编程问答-------------------- 后台就遍历 Controls --------------------编程问答-------------------- 6-7楼方法不错 --------------------编程问答--------------------
人家总共才发两贴,有什么惨不忍睹的。 --------------------编程问答-------------------- 最简单的:如果是web的话,加一个 input type = "reset" --------------------编程问答-------------------- 每天回帖 --------------------编程问答-------------------- 我上面所有用 foreach的 +++++ --------------------编程问答-------------------- 这个用脚本做把速度比较快 用JS或者JQuery遍历文本 赋值为""
$(":input").foreach(function(i){
$(this).val("");
}); --------------------编程问答-------------------- 方法太多了,上面举出了用JS的方法,和c#控件遍历的方法 --------------------编程问答-------------------- 如果是WinForm,那么就遍历一下窗体所有的控件
如果是textBox就把它置为空或者为0,就OK了
--------------------编程问答--------------------
+1
这个很好地用到了AS,避免了强制转换的一些弊端。
不但完成任务,安全性也很好。赞一个!! --------------------编程问答-------------------- 学习~ --------------------编程问答--------------------
///声明:本人新手一名。。。
///本人测试代码
protected void Button1_Click(object sender, EventArgs e)
{
foreach(Control aa in Page.Controls )
if (aa is TextBox)
{
TextBox tb = (TextBox)aa;
tb.Text= " ";
}
}
怎么点击Button1 没反应 求解。。。。谢谢大虾们。。 --------------------编程问答--------------------
不好意思刚引用错了。。。 --------------------编程问答-------------------- 我从网上找到了一个例子,绝对适合LZ
遍历页面上所有的TextBox控件并将其设置为空值 --------------------编程问答-------------------- 学习。。。 --------------------编程问答--------------------
顶部点一下那个结贴,然后在你想给分的帖上输入分数,可输入一个贴或多个,在底部按结贴! --------------------编程问答-------------------- 方法都不错~ --------------------编程问答--------------------
这个才是王道 --------------------编程问答-------------------- 人多力量大啊 --------------------编程问答-------------------- 用foreach的注意,最好习惯吧它看成只读迭代 --------------------编程问答-------------------- --------------------编程问答-------------------- textbox.text="0"; --------------------编程问答--------------------
顶递归!
补充:.NET技术 , C#