You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用ItemsControl显示对象集合时窗口空白问题排查

问题分析与修复

你的代码核心问题是未设置DataContext,导致WPF的数据绑定无法找到Items集合,最终ItemsControl没有数据源,所以窗口显示空白。

修复方法(二选一即可)

方法1:在构造函数中设置DataContext

修改MainWindow的构造函数,添加DataContext = this;,让窗口自身作为数据上下文:

public MainWindow()
{
    InitializeComponent();
    DataContext = this; // 新增这一行
    Items.Add(new ListItem("Item 1"));
    Items.Add(new ListItem("Item 2"));
    Items.Add(new ListItem("Item 3"));
    Items.Add(new ListItem("Item 4"));
    Items.Add(new ListItem("Item 5"));
    Items.Add(new ListItem("Item 6"));
}

方法2:在XAML中直接指定绑定源

不需要修改C#代码,直接修改ItemsControl的ItemsSource绑定,通过RelativeSource指定绑定到窗口的Items属性:

<ItemsControl x:Name="Images" ItemsSource="{Binding Path=Items, RelativeSource={RelativeSource AncestorType=Window}}">

额外调试技巧

如果以后遇到类似绑定无报错但不显示的情况,可以开启WPF绑定调试输出:

  1. 打开Visual Studio的「工具」->「选项」->「调试」->「输出窗口」
  2. 在「WPF跟踪设置」中,将「数据绑定」的级别设为「错误」或「详细」
  3. 运行程序后,输出窗口会显示绑定失败的具体原因,帮助快速定位问题

内容的提问来源于stack exchange,提问作者yasar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 04:02:19