我是Caliburn.Micro
的新人。
绑定TextBlock
上的文字。
TextBlock
的文字在启动时更改或在ViewModel
上初始化,
但它不会改变被解雇的功能。
我不知道为什么一天。
我需要任何帮助。
这是我写的代码。
在视图中
<TextBlock Grid.Row="0" FontSize="72" Foreground="White"
HorizontalAlignment="Center" VerticalAlignment="Center"
x:Name="DisplayedPhoneNumber"/>
在ViewModel中
//! Scren Binding.
public string DisplayedPhoneNumber { get; set; } ="0103214321";
当我按下视图上的按钮时,我会调用这样的函数,
在视图中
<Border Style="{StaticResource StyleNumberKeyBorder}">
<Button Content="1" Style="{StaticResource StyleNumberKeyButton}"
cal:Message.Attach="[Event Click]=[Action CmdNumberClick(1)]"/>
</Border>
在ViewModel中,CmdNumberClick函数就像这样...
public void CmdNumberClick(string pressed_number)
{
DisplayedPhoneNumber = "plz change...";
}
我检查已触发的函数,并检查DisplayedPhoneNumber是否已更改, 但TextBlck没有改变。
请帮忙。
答案 0 :(得分:1)
public string DisplayedPhoneNumber { get; set; }
需要
private string _displayedPhoneNumber;
public string DisplayedPhoneNumber{
get{ return _displayedPhoneNumber;}
set{
_displayedPhoneNumber = value;
NotifyOfPropertyChanged(() => DisplayedPhoneNumber);
}
}
关联的ViewModel必须继承PropertyChangedBase
或派生INotifyPropertyChanged
的基类;