下午好。我的名字是尤金。首先,请原谅我的英语不好。我有以下问题。在 WPF 应用程序主窗口中,我有一个 TextBox,在 XAML 标记中,我将其描述如下:
<TextBox Name="tbxRange" Grid.Row="1" Grid.Column="3" TextAlignment="Center"
Text="{Binding Path=CurCompassRange.Range, UpdateSourceTrigger=PropertyChanged,
Mode=OneWayToSource, RelativeSource={RelativeSource AncestorType={x:Type Window}}}"/>
在这个 TextBox 中,我打印一个浮点数值。可以多次更改 Text 属性的内容以等待程序执行。在 MainWindow 类中,我有以下成员作为字段:
private static Double topMargin = 0;
private static Double bottomMargin = 0;
private static Double initialValue;
应用程序开始运行时分配给“initialValue”的值。我需要以下内容。当我在 TextBox 中打印一个新数字时,它的值首先必须从“initialValue”中减去(“initialValue”本身的值不会改变),减法的结果必须存储在“bottomMargin”中,其次是打印数字的值必须添加到“initialValue”,并且添加的结果必须存储在“topMargin”中。我可以多次更改 TextBox 的 Text 属性的内容,以等待程序执行。我的问题如下。我可以在 XAML 标记中编写一些触发器,这些触发器可以在每次 TextBox Text 属性的值发生变化时执行上述减法和加法吗?当然,我知道我可以尝试编写(在 C# 上)TextBox TextInput 事件处理程序来执行这些操作并在其主体中执行减法和加法,但是在 XAML 标记中使用触发器似乎更优雅。我会非常感谢你的帮助。我对WPF不是很擅长。请帮我。