WPF退出“已删除”组合框,项目不再可编辑?

瑞安·苏斯曼(Ryan Susman)

朋友们,

我有一个WPF组合框。打开组合框时,我将根据环境变量动态生成项目。因此,基本上,一个组合框绑定到一个动态变化的列表。

一切正常,直到我退出与下拉组合框中开放进入另一个控制(另一个组合框)。

当我重新打开第一个组合框时,项目似乎被冻结,并且当INDEED列表在更改并且仍然绑定时,它们不再绑定到列表。它几乎像装订一样破裂。

发生此事件时,我试图强行添加项目,但这也不起作用。我可以在后面的代码中看到,组合框现在包含其他项,但是在UI中却没有包含这些其他项。

这是什么黑魔法?有什么预防方法吗?这是某种“卡住”问题吗?也许下拉列表没有调整大小?

我认为我已将其范围缩小到物理下拉列表,而不是重新调整新项目的大小。

编辑*

这些控件是动态生成的,因此除此以外,我没有真正的硬代码向您展示。

private void CBControl_DropDownOpened(object sender, EventArgs e)
{
    ((ComboBox)sender).Items.Add("Option");
}

在此事件中,我将向组合框添加一个项目,尽管这些项目已添加到列表中,但它们不会显示在UI中。

编辑2 *

我弄清楚了,所以我有2个组合框,似乎第二个组合框正在固定并在下拉列表中保持焦点。(奇怪的错误)

为了修复它,我需要通过打开第二个组合框的索引来释放它。

int sel = ComboBoxTwo.SelectedIndex;
ComboBoxTwo.IsDropDownOpen = true;
ComboBoxTwo.SelectedIndex = -1;
ComboBoxTwo.IsDropDownOpen = true;
ComboBoxTwo.SelectedIndex = sel;

而且我不得不处理意外的递归调用。

瑞安·苏斯曼(Ryan Susman)

所以,就在这里。

您有2个ComboBoxes。如果您打开一个,然后直接单击另一个,则焦点将移至第二个组合框下拉列表。

如果您对第一个组合框进行了任何更改,则更改将不会对样式(下拉框调整大小)生效,直到您从第二个组合框下拉菜单项中释放焦点为止。尽管项目更改将生效,但调整大小不会生效。

要释放焦点,您需要打开第二个combox并更改选定的索引,如下所示:

    int sel = ComboBoxTwo.SelectedIndex;
    ComboBoxTwo.IsDropDownOpen = true;
    ComboBoxTwo.SelectedIndex = -1;
    ComboBoxTwo.IsDropDownOpen = true;
    ComboBoxTwo.SelectedIndex = sel;

10个小时的调试。5个小时的研究。我找到的第一个解决方案。它可能很脏,但是我能找到的全部。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

具有可编辑组合框的WPF可编辑Listview

来自分类Dev

qt组合框可读但可编辑

来自分类Dev

JavaFx可编辑组合框:在项目选择上显示toString

来自分类Dev

选择特定的组合框项目后,如何将DataGridViewComboBoxCell设置为可编辑模式?

来自分类Dev

如何在WPF中对可编辑组合框应用拼写检查

来自分类Dev

尝试从已填充的组合框VBA中删除特定项目

来自分类Dev

具有自定义对象的可编辑组合框可重写下拉列表中的项目

来自分类Dev

编辑后如何删除可编辑元素周围的蓝色框?

来自分类Dev

编辑后如何删除可编辑元素周围的蓝色框?

来自分类Dev

JAVAFX可编辑组合框:更改值后刷新

来自分类Dev

Extjs不可编辑的组合框自动完成

来自分类Dev

如何使不可编辑的组合框显示提示符?

来自分类Dev

如何允许用户清除可编辑组合框的值?

来自分类Dev

JavaFX 11可编辑组合框抛出IndexOutOfBoundsException

来自分类Dev

JAVAFX可编辑组合框:更改值后刷新

来自分类Dev

Vaadin可编辑组合框,带有默认选项

来自分类Dev

JavaFX组合框样式按钮(如果可编辑)

来自分类Dev

Webix组合框中的不可编辑文本字段

来自分类Dev

如何在表单上制作可编辑的组合框

来自分类Dev

单击选择JavaFX可编辑组合框文本

来自分类Dev

Redux-Form中的可编辑组合框

来自分类Dev

数据绑定后组合框不可编辑

来自分类Dev

WPF可编辑组合框在键入时不会更改SelectedValue

来自分类Dev

WPF组合框-编辑选定的文本

来自分类Dev

通过组合框项目值删除组合框项目

来自分类Dev

WPF-部分不可编辑的文本框

来自分类Dev

WPF DatePicker 文本框白色边框不可编辑

来自分类Dev

可编辑的ListView项目

来自分类Dev

使跨度项目可编辑?

Related 相关文章

热门标签

归档