c# - 为什么这个 ListView 不绑定到这个列表?
问题描述
我有一个 ViewModel 和一个 XAML 视图,在这种特殊情况下似乎没有绑定(此视图和同一 ViewModel 上的其他绑定已经在工作)。大致上,设置有
视图模型:
public class MainViewModel : ObservableObject
{
public List<IntegrationListItem> RightPanelViewModels { get; set; }
MainViewModel()
{
RightPanelViewModels = new List<IntegrationListItem>();
}
private void ButtonPush()
{
ViewModels.Add(new SomeIntegration());
}
}
public class IntegrationListItem
{
public string Name { get; set; }
}
public class SomeIntegration : IntegrationListItem
{
public string Name { get; set; }
SomeIntegration()
{
Name = "XXXX";
}
}
看法:
<ListView ItemsSource="{Binding RightPanelViewModels}">
<ListView.ItemTemplate>
<DataTemplate>
<DockPanel>
<Label Content="{Binding Name}"/>
</DockPanel>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
我的问题是当我触发 ButtonPush() (并且我已经验证它确实被触发了)时,ListView 应该在的地方没有任何反应。如果这不是 MCV 示例,我深表歉意,但我真的不知道我错过了什么。我一直在关注本教程,它们使它看起来非常简单。
解决方案
推荐阅读
- android - 如何在 CMake/Android NDK 中链接到其他模块的库?
- android - 如何让 Flutter 模块在原生 Android Activity 启动二级路由后返回原生 Android Activity?
- reactjs - 如何使用 Apollo GraphQL 使用 Mongoose 聚合查找返回 id
- javascript - 嵌套多层异步/等待似乎不等待
- javascript - 传递给函数的值变得未定义
- r - 将字符串添加为具有定义函数的公式
- ios - 首次启动应用程序 Xcode 11 iOS 13 后如何使入职场景消失
- java - 包文件夹在哪里?那应该存储在android设备中吗?
- javascript - select2,无法选择 AJAX 结果
- java - 从firebase获取坐标以绘制折线