gpt4 book ai didi

silverlight - 在 MVVM Light 中将文本 block 绑定(bind)到文本框

转载 作者:行者123 更新时间:2023-12-03 10:55:38 24 4
gpt4 key购买 nike

我有一个非常简单的 MVVM Light 应用程序,它有一个文本 block 和一个文本框。我要做的是使用 MVVM Light Toolkit 和数据绑定(bind)将文本 block 值设置为文本框值。当我运行程序时,文本 block 文本不会更新。

private string _name = "Test Name";

public string Name
{
get
{
return _name;
}
set
{
_name = value;
RaisePropertyChanged("NameChanged");
}
}

这是 XAML。 “测试名称”看起来不错,但不会更改为文本框的值。
文本 block :
<TextBlock x:Name="NameTitle"
Text="{Binding Name}"
Margin="-3,-8,0,0"/>

文本框:
<TextBox Text="{Binding Name, Mode="TwoWay"}" x:Name="tb"            
HorizontalAlignment="Center"
VerticalAlignment="Center"
FontSize="40" >
<i:Interaction.Triggers>
<i:EventTrigger EventName="LostFocus">
<commands:EventToCommand Command="{Binding Name}"
CommandParameter="{Binding Text, ElementName=tb}" />
</i:EventTrigger>
</i:Interaction.Triggers>
</TextBox>

最佳答案

您应该将“Name”传递给 RaisePropertyChanged 而不是“NameChanged”。另一种解决方案是使用 ElementName 将 TextBlock 直接绑定(bind)到 Textbox

XAML:

<TextBlock x:Name="NameTitle" Text="{Binding ElementName=tb, Path=Text}" Margin="-3,-8,0,0"/>

关于silverlight - 在 MVVM Light 中将文本 block 绑定(bind)到文本框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10472730/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com