在 WPF 中使用 Unity Prism 在 TextBox 中键入时实时更新 TextBlock
Update TextBlock in real time while typing in TextBox using Unity Prism in WPF
我正在尝试在 WPF 中使用 Prism Unity 在 TextBox 中键入时更新 TextBlock,但它仅在我关闭主 window 而不是在键入时触发。
视图模型
private string _textName = "text";
public string TextName
{
get { return _textName; }
set
{
_textName = value;
RaisePropertyChanged(nameof(TextName));
}
}
查看
<StackPanel>
<TextBlock Text="{Binding TextName}" FontSize="30"></TextBlock>
<TextBox Text="{Binding TextName}"></TextBox>
</StackPanel>
如何在不实施 event_handler 的情况下在 TextBox 中键入时实时获取 TextBlock 更新?
默认情况下,属性 changed 仅在焦点改变时触发。
要在您键入时触发,请更改:
<TextBox Text="{Binding TextName}">
</TextBox>
...至:
<TextBox Text="{Binding TextName,
UpdateSourceTrigger=PropertyChanged}">
</TextBox>
我正在尝试在 WPF 中使用 Prism Unity 在 TextBox 中键入时更新 TextBlock,但它仅在我关闭主 window 而不是在键入时触发。
视图模型
private string _textName = "text";
public string TextName
{
get { return _textName; }
set
{
_textName = value;
RaisePropertyChanged(nameof(TextName));
}
}
查看
<StackPanel>
<TextBlock Text="{Binding TextName}" FontSize="30"></TextBlock>
<TextBox Text="{Binding TextName}"></TextBox>
</StackPanel>
如何在不实施 event_handler 的情况下在 TextBox 中键入时实时获取 TextBlock 更新?
默认情况下,属性 changed 仅在焦点改变时触发。
要在您键入时触发,请更改:
<TextBox Text="{Binding TextName}">
</TextBox>
...至:
<TextBox Text="{Binding TextName,
UpdateSourceTrigger=PropertyChanged}">
</TextBox>