gpt4 book ai didi

c# - 将项目绑定(bind)到列表框

转载 作者:行者123 更新时间:2023-11-30 22:28:41 25 4
gpt4 key购买 nike

我有一个应用程序,我在其中向用户显示特定单词的含义。因此,我在前端使用了一个列表框。这是代码..

XAML:

<ListBox Background="White" Grid.Row="1" ItemsSource="{Binding}" Height="605" HorizontalAlignment="Stretch" Margin="0,90,0,0" Name="listBox1" VerticalAlignment="Top">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Vertical" Height="50">
<TextBlock Text="{Binding ActualWord}" Height="5" />
<TextBlock Text="{Binding Meaning}" Height="5"/>
<TextBlock Text="{Binding Type}" Height="5"/>
<TextBlock Text="{Binding Example}" Height="5" />
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>

用于在后端添加单词的 C#..

listBox1.Items.Add(new WordClass()
{
ActualWord = "Something",
Type = "Something111",
Meaning = "Something222",
Example = "Something333"
});

问题是代码可以编译,但我看到一个空白屏幕,或者换句话说,列表框中没有任何内容,即使我在页面的构造函数中执行此操作也是如此。

最佳答案

从您的 XAML 中删除 ItemsSource="{Binding}" 部分。由于您是手动填写列表,因此不需要它,而且它可能会导致问题。

另一种选择是保持 XAML 不变,填充 WordClass 的集合并将其设置为 DataContext:

var list = new List<WordClass>();
list.Add(new WordClass()
{
ActualWord = "Something",
Type = "Something111",
Meaning = "Something222",
Example = "Something333"
});
...

this.DataContext = list;

关于c# - 将项目绑定(bind)到列表框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10668365/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com