【发布时间】:2015-06-30 09:42:18
【问题描述】:
在运行时更改模型实例是否正确?我的控件绑定到第一个实例,但在程序执行期间我想将它们绑定到另一个实例。
ViewModel 类中的某个地方:
//ViewDefault - already initialized
// View - will be ready later
public string TextProperty
{
get
{
if (View != null)
{
return View.Model.text;
} return ViewDefault.Model.text;
}
set
{
if(View != null)
{
//.. logic with View.Model.text
}else{
// logic with ViewDefault.Model.text
}
RaiseOnPropertyChanged("TextProperty");
}
问题是 - 我必须做什么来通知我的视图绑定内容已更改?
<Setter Property="Text" Value="{Binding MyViewModel.TextProperty, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
*ViewDefault.Model 和 View.Model 有一种类型
【问题讨论】:
-
为什么要更改实例?