WinForm控件真的很垃圾
一个非常简单的问题,竟然用了两个小时,查了N多资料也没有解决。.net的winfrom内伤很深。
说一下问题,不对之处请达人指点:
三个textbox,前两个在textchanged事件中写代码,用于输入数据后相乘运算,第三个显示运算后的值。如果您运行这么简单的代码,当然不会出错,非常顺利。
但是,如果这三个textbox绑定到一个数据源上,那么您再试试。保证会头大一圈。
如果说不是BUG,那么很难想象一个这么简单的控件,在表现行为上,依据绑定与否会有这么大的差别。还有很多类似的东西,叫人非常不爽!!!
也许学艺不精,还请达人指点。
[解决办法]
这样试试:
private void textBox1_TextChanged(object sender, EventArgs e){ int A = 0, B = 0; int.TryParse(textBox1.Text, out A); int.TryParse(textBox2.Text, out B); textBox3.Text = (A + B).ToString(); textBox3.DataBindings["Text"].WriteValue();}
[解决办法]
binding 尽量还不是少用的好。
考虑更自主些的方式吧。
[解决办法]
一定要绑定吗?你可以在DataTable中把那个对应第三个TextBox的列设置为计算字段啊。