我尝试过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
中给出了格式错误的错误答案 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
方法,也可以检查TryParse
值textbox
是not empty
而不是convert
到decimal
值。
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());