我的Windows手机应用程序中有三个文本框。我想在用户输入任何一个文本框后立即更改这三个文本框的数值。
我的XAML如下:
<TextBox x:Name="t_horizontal" InputScope="Number" TextChanged="cambio"/>
<TextBox x:Name="t_vertical" InputScope="Number" TextChanged="cambio" />
<TextBox x:Name="t_diagonal" InputScope="Number" TextChanged="cambio"/>
我的C#代码如下:
private void cambio(object sender, TextChangedEventArgs e)
{
TextBox modificado = sender as TextBox;
if (modificado.Name == "t_horizontal")
{
this.ancho = Double.Parse(modificado.Text);
this.diagonal = getDiagonal(this.ancho, this.alto);
}
else if (modificado.Name == "t_vertical")
{
this.alto = Double.Parse(modificado.Text);
this.diagonal = getDiagonal(this.ancho,this.alto);
}
else if (modificado.Name == "t_diagonal")
{
this.diagonal = Double.Parse(modificado.Text);
this.ancho = getAncho(diagonal);
this.alto = getAlto(diagonal);
}
t_vertical.Text = this.alto+"";
t_horizontal.Text = this.ancho+"";
t_diagonal.Text = this.diagonal+"";
}
我猜当我给文本框分配新值时,事件会再次触发,导致我的代码进入无限循环。我做错了什么?我该如何解决?