【问题标题】:Alternatives to placeholder in combobox组合框中占位符的替代品
【发布时间】:2019-11-14 12:28:15
【问题描述】:

我有一个通过我的视图模型加载的组合框。组合框一旦出现就会有一个默认的空白选择,自然可以用占位符文本很好地覆盖。

我尝试了不同的方法来实现这一点,但是由于似乎没有达到我的预期,我最终使用了一个在扩展组合框控件中支持水印功能的库 (xceed)。

但是,如果我用新实体重新加载组合框,我会回到做出空白选择的情况 - 但是我可以展开组合框以查看我的实体。

从用户的角度来看,这不是很好。这就是为什么我想知道,如何正确地将占位符文本添加到我的组合框,该文本将在我更新组合框的内容之前和之后出现。

【问题讨论】:

    标签: c# wpf xaml combobox


    【解决方案1】:

    假设您在 IDictionary 中有选项,可能从数据库中填充。

    因此,在您的 ViewModel 中,您可以执行以下操作:

    IDictionary<int, string> items = GetComboOptions(); var comboDataSource = new Dictionary<int, string>({0,"Select..."}).Union(items).ToDictionary(kvp => kvp.Key, kvp => kvp.Value);

    然后您可能需要通过将代码放入属性来将其绑定到您的视图。不过我还没有测试过这段代码。

    【讨论】:

      猜你喜欢
      • 2019-11-17
      • 1970-01-01
      • 1970-01-01
      • 2014-03-22
      • 1970-01-01
      • 1970-01-01
      • 2020-08-28
      • 2011-08-01
      • 1970-01-01
      相关资源
      最近更新 更多