UWP TextBox 文本绑定不起作用

UWP TextBox Text binding not working

我在使用 UWP 中的 TextBox.Text 绑定时遇到一些问题。我从事 WPF 多年,通常知道我在 XAML 中做什么,但无法使此绑定工作...

我在 XAML

的相同范围内有一个 TextBox 和一个 Button
<StackPanel Orientation="Horizontal"
            Margin="0,10,0,0">
    <TextBox Width="200" Text="{Binding SearchText, UpdateSourceTrigger=PropertyChanged}"/>
    <Button Margin="10,0,0,0"
            Command="{Binding SearchBusCommand}">Go</Button>
</StackPanel>

并且绑定的属性在 ViewModel 中处于同一范围

public ICommand SearchBusCommand { get; }

public string SearchText { get; set; }

但是,当我在 TextBox 中键入文本并点击 Button 时,命令执行并且 SearchText 值为 null...

我的期望是,当我在 TextBox 中键入文本时,SearchText 属性 会更新为文本值。

如果我从 ViewModel 设置 SearchText 的值 属性,它会出现在 TextBox 中。

好吧,似乎在 UWP 中 TextBox.Text 属性 上的绑定默认是单向的..!

我必须将绑定设置为 TwoWay 才能使其正常工作。

<TextBox Width="200" Text="{Binding SearchText, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>

他们为什么要那样做!?