c# - 为数据创建新的控件集的应用程序
问题描述
我正在尝试创建一个 C# 应用程序,并且我在 WPF 的 UI 方面苦苦挣扎。应用程序将在运行时接收新数据,我需要为(控件示例)生成一组新控件。
目前我将上面的这张图片设置为数据模板,我想做的是使用 contentpresenter 创建副本,每个副本都有一组不同的数据。我正在努力弄清楚如何将不同的数据传递给使用 contentpresenter 创建的副本,而不是一遍又一遍地传递相同的值。
做这样的事情的最佳方法是什么
解决方案
听起来你想要一个ItemsControl
表示可用于呈现项目集合的控件。
和ViewModal 中的ObservableCollection
表示一个动态数据集合,它在添加、删除项目或刷新整个列表时提供通知。
<ItemsControl ItemsSource="{Binding SomeSortOfObservableCollection}">
<ItemsControl.ItemTemplate>
<DataTemplate>
...
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
这样,您将获得一个更新模板重复列表,该列表会在您添加项目时更新。
您也可以ListBox
根据需要使用 a 和其他东西
推荐阅读
- css - 将 css 变量存储在 sass 变量中的函数返回未定义的操作
- sql - Postgresql行在更新后被隐藏,无法选择它
- ios - SwiftUI - NavigationView 的带有圆角和阴影的导航栏
- c++ - 链表分段错误 C++
- go - golang 发送一个 lambda 捕获组
- python - 如何重塑随机熊猫列以便广播?
- mongodb - MongoDB对不同集合的并发查询很慢
- python - 神经网络的梯度只有 1d
- django - Django REST 验证器。多个用户可以拥有相同值的记录,但该记录对于每个用户都是唯一的,如何做到这一点?
- getstream-io - getstream 聊天:为每个服务器端请求使用新的 JWT 令牌