【发布时间】:2012-08-17 14:18:40
【问题描述】:
我正在开发一个使用 Caliburn Micro 的 WPF 项目。我遇到了第二次打开视图时视图中的控件没有更新的问题。第一次数据绑定工作正常。
当我在第二次调用 View 时单步执行 ViewModel 时,我可以看到数据绑定属性正在获取新值并调用 NotifyOfPropertyChange(),但更改并未反映在 UI 中。有任何想法吗?我的视图继承PropertyChangedBase()
以下是我在视图模型中的属性
public string Info
{
get { return _info; }
set { _info = value; NotifyOfPropertyChange(() => Info); }
}
public IEnumerable<ComponentInfo> BondableComponents
{
get { return _bondableComponents; }
set { _bondableComponents = value; NotifyOfPropertyChange(() => BondableComponents); }
}
和 Xaml
<TextBox Name="Info" Grid.Row="0" Grid.Column="0" IsReadOnly="True"/>
<DataGrid ItemsSource="{Binding BondableComponents}">
【问题讨论】:
-
你能显示打开和关闭视图的代码吗?
-
您是在 OnInitialize 而不是 OnActivate 或 OnViewLoaded 中填充数据?
标签: wpf data-binding caliburn.micro caliburn