Combox 不显示添加的项目
Combox doesn't show added items
我在 Windows Phone 8.1 应用程序中向我的组合框添加组合框项目时遇到问题。
以下代码放在page_load函数中,逐步调试显示e.Name包含正确的值,所以这不是ElementList的问题。
foreach (element e in ElementList)
{
ComboBoxItem cbItem = new ComboBoxItem();
cbItem.Content = e.Name;
cbElements.Items.Add(cbItem);
}
问题是在page_load函数执行完后,我的comboBox还是空的,尽管它的Count值不为0。我真的一点头绪都没有,为什么不想要填满。
谢谢你的帮助
您可能需要设置组合框的 display/value 成员属性才能显示数据。
看起来您要显示的 属性 是 "Name",因此您可能希望将两者都设置为 "Name"。
cbElements.DisplayMember = "Name";
cbElements.ValueMember = "Name"; // or some other value if you have an ID
尝试使用 Refresh
方法刷新组合框。
comboBox1.Refresh();
您可能需要这样做,因为组合框的内容是在运行时生成的。
我找到了解决方案。不过这很愚蠢,因为这是一个 XAML 相关的问题。 StackPanel 不小心与 comboBox 重叠,因此我无法点击它。不过吸取了教训,请始终检查您是否点击了正确的对象。
我要感谢所有发布解决方案并试图提供帮助的人
我在 Windows Phone 8.1 应用程序中向我的组合框添加组合框项目时遇到问题。
以下代码放在page_load函数中,逐步调试显示e.Name包含正确的值,所以这不是ElementList的问题。
foreach (element e in ElementList)
{
ComboBoxItem cbItem = new ComboBoxItem();
cbItem.Content = e.Name;
cbElements.Items.Add(cbItem);
}
问题是在page_load函数执行完后,我的comboBox还是空的,尽管它的Count值不为0。我真的一点头绪都没有,为什么不想要填满。
谢谢你的帮助
您可能需要设置组合框的 display/value 成员属性才能显示数据。
看起来您要显示的 属性 是 "Name",因此您可能希望将两者都设置为 "Name"。
cbElements.DisplayMember = "Name";
cbElements.ValueMember = "Name"; // or some other value if you have an ID
尝试使用 Refresh
方法刷新组合框。
comboBox1.Refresh();
您可能需要这样做,因为组合框的内容是在运行时生成的。
我找到了解决方案。不过这很愚蠢,因为这是一个 XAML 相关的问题。 StackPanel 不小心与 comboBox 重叠,因此我无法点击它。不过吸取了教训,请始终检查您是否点击了正确的对象。
我要感谢所有发布解决方案并试图提供帮助的人