【发布时间】:2018-03-20 11:11:16
【问题描述】:
我正在尝试将 TextBlock 绑定到 ObservableCollection 中的项目。 TextBlock 值应由集合中的元素生成。集合中的元素数量在 0 到 7 之间(如果有帮助的话)。 MyClass 实现了 INotifyPropertyChanged。它应该直接是TextBlock,而不是ListBox。我该怎么做?谢谢!
更新:问题是我以前不知道集合中的元素数量。我知道在这种情况下使用 ListBox 或 ListView 会更好,但在 TextBlock 或 Label 中使用它很重要
例如:
1.ObservableCollection 包含元素 0、1、2。
TextBlock 应包含以下“值:0、1、2”
2. ObservableCollection 包含元素 0, 1.
TextBlock 应包含以下“值:0, 1”
<TextBlock>
<Run Text="Values: "/>
<Run Text="{Binding Values}" />
</TextBlock>
ObservableCollection<int> values = new ObservableCollection<int>();
public ObservableCollection<int> Values
{
get => values;
set
{
values = value;
OnPropertyChanged();
}
}
【问题讨论】:
-
@MikeT 我不认为它是提供的链接的副本。问题在于绑定来自 ObservableCollection 的多个条目,而不是绑定集合中单个条目的多个值。
标签: c# wpf binding observablecollection textblock