看代码如下:
private void button1_Click(object sender, EventArgs e)
{
//this.textBox1.Undo(); //成功
//this.textBox2.Undo(); //成功
........ //this.textBox.Text=string.Empty; //成功
........
//当textBox控件太多的时候,用下面的方法获取TextBox类型的控件,然后清空数据,但撤销却报错
foreach(Control col in this.Controls)
{
if (col is TextBox)
{
col.Text = string.Empty;
col.Undo();//出错
}
}
}
private void button1_Click(object sender, EventArgs e)
{
//this.textBox1.Undo(); //成功
//this.textBox2.Undo(); //成功
........ //this.textBox.Text=string.Empty; //成功
........
//当textBox控件太多的时候,用下面的方法获取TextBox类型的控件,然后清空数据,但撤销却报错
foreach(Control col in this.Controls)
{
if (col is TextBox)
{
col.Text = string.Empty;
col.Undo();//出错
}
}
}
解决方案 »
- try 内部的变量,外部怎么调用。
- C# 线程类Thread可以被继承吗?
- 登录绑定用户问题~请高手帮忙!
- 如何在listview上添加一个button
- datagridview中的combobox如何默认选中第一项
- 问一个较难的问题:如何用c#编码测试程序执行速度?结果用单位时间执行指令数或程序执行时间表示都行。
- 请给初学计算机(主攻写程序)的指引一条稳健的学习之路!
- C#处理C++ dll 函数
- C#能否调用finereport报表? 急急急
- 助我,老夫在线侯着!!!!!
- 判断某字符串是否在字符串数组中,Array.BinarySearch出故障了,Help me!
- 已知经纬度和转换后的x/y坐标,怎样求它们之间的距离和角度?
//this.textBox1.Undo(); //成功
//this.textBox2.Undo(); //成功
........ //this.textBox.Text=string.Empty; //成功
........
//当textBox控件太多的时候,用下面的方法获取TextBox类型的控件,然后清空数据,但撤销却报错
foreach(Control col in this.Controls)
{
if (col is TextBox)
{
(col as TextBox).Text = string.Empty;
(col as TextBox).Undo();//出错
}
}
}
为下楼上的,为什么 col=(TextBox)col;出错?
你把这句换成
col=(TextBox)col;
这个当然会出错.....
就像你把 int i=100;i=(string)i;
如果用这种方式.你要么在创建一个TextBox
要么((TextBox)col).Undo();