【问题标题】:ComboBox fails to display .Text property value after first runtime use首次运行时使用后,ComboBox 无法显示 .Text 属性值
【发布时间】:2012-01-18 18:27:47
【问题描述】:

我的 WPF 表单上有几个级联组合框,每个组合框都绑定到一个列表。组合框 A 中的选择在我的 LINQ 中用作参数来填充组合框 B,其选择在我的 LINQ 中用作参数来填充组合框 C。

这些组合框中的每一个都有一个文本值,例如“请选择一个部门...”,当没有进行选择时应该出现该值。我已将组合框的 IsEditable 属性设置为 true,以便文本在进行任何选择之前出现在组合框中。这一切正常。

我的问题是,在初始运行时使用后,此文本消失并且不再出现在没有选定值的组合框中。实例化后,所有三个组合框都显示默认文本。

我尝试将 SelectedIndex 值设置为 -1 无济于事。我错过了什么吗?

【问题讨论】:

    标签: wpf text combobox


    【解决方案1】:

    可编辑 ComboBox 中的文本只会在最初显示。来自 ComboBox.Text 上的 MSDN 文档:

    获取或设置当前选中项的文本

    备注部分指出:

    当 IsEditable 属性为 true 时,设置该属性 在文本框中输入的初始文本。

    一旦选择了一个项目,文本将被设置为所选项目的文本,并且永远不会恢复为初始值。

    【讨论】:

    • 这就解释了,虽然我不知道我是否理解这种行为背后的逻辑。
    • 我强烈感觉到这是在实施中的一个 hack,它经常打乱全世界开发人员的时间。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-01-18
    • 1970-01-01
    • 2012-04-06
    • 2011-01-22
    • 1970-01-01
    • 1970-01-01
    • 2016-05-26
    相关资源
    最近更新 更多