如何计算textchanged事件的值?

时间:2015-06-19 07:19:22

标签: c# winforms

我尝试过textchanged事件

decimal a1 = Convert.ToDecimal(0.00);
decimal b1 = Convert.ToDecimal(0.00);
decimal c1 = Convert.ToDecimal(0.00);
a1 = Convert.ToDecimal(txt_Advance.Text.Trim().ToString());
b1 = Convert.ToDecimal(txtTotal.Text.Trim().ToString());
c1 = b1 - a1;
txt_Net.Text = c1.ToString();

当我再次改变价值时,这只有一次。它在txt_Advance.text

中给出了格式错误的错误

1 个答案:

答案 0 :(得分:4)

您需要使用var colors = ['red', 'yellow', 'blue', 'green']; var Hello = React.createClass({ randomText(color) { var style = { color: colors[color], } return ( <h1 style={style}> Random text </h1> ); }, randomNumberOfRandomText() { var color = Math.floor((Math.random() * 5)); var rows = []; var num = Math.floor((Math.random() * 5) + 1); for (var i=0; i < num; i++) { rows.push(this.randomText(color)); } return <div> {rows} </div>; }, handleSubmit(e) { e.preventDefault(); this.forceUpdate(); }, render: function() { return ( <div> <section> <button onClick={this.handleSubmit.bind(this)}>Generate new random texts! </button> </section> {this.randomNumberOfRandomText()} </div>); } }); React.render(<Hello name="World" />, document.getElementById('container')); 方法。实际上发生的事情是,当你TryParse某个值时,它正在被正确解析。但是,当您按enter时,该值已被删除且backspace变为textbox,因此尝试转换empty会给empty string into decimal

您可以使用format exception方法,也可以检查TryParsetextboxnot empty而不是convertdecimal值。

decimal.TryParse(txt_Advance.Text.Trim().ToString(),out a1);

OR

if(!string.IsNullOrEmpty(txt_Advance.Text.Trim().ToString()))
  a1 = Convert.ToDecimal(txt_Advance.Text.Trim().ToString());