【问题标题】:Display text on combo box在组合框上显示文本
【发布时间】:2014-01-20 17:02:12
【问题描述】:

我正在使用组合框,当您选择箭头时,我会打开一个列表,我想要 将文本放在组合框上,您将在不打开组合框的情况下看到它, 我该怎么做?

目前我尝试使用 text="name" ,name="name" 没有成功,组合框没有 将任何内容显示为文本。只需从下拉列表中列出...

喜欢下面的

http://msdn.microsoft.com/en-us/library/ms753382%28v=vs.85%29.aspx

此外,我怎样才能将箭头更改为链接中的样子

【问题讨论】:

  • 您是指水印还是默认项?水印不是列表的一部分,只是给出一个提示,而默认项目是列表中的一个。你要哪一个?

标签: wpf xaml


【解决方案1】:

将集合列表中的第一项设置为默认选择。

这里有一个例子:

How to show text in combobox when no item selected?

编辑:

public class MyViewModel
{
    public MyViewModel()
    {
         Items.Add("Select one item");
         Items.Add("Item1");
         Items.Add("Item2");
         Items.Add("Item3");

         SelectedItem = Items[0];
    }

    private List<String> _items;
    public List<String> Items
    {
         get{ return _items; }
         set
         { 
              _items = value; 
              RaisePropertyChanged(() => Items);
         }
    }

    private String> _selectedItem;
    public String SelectedItem
    {
         get{ return _selectedItem; }
         set
         { 
              _selectedItem= value; 
              RaisePropertyChanged(() => SelectedItem);
         }
    }

}

在您的 xaml 文件中,您必须绑定到项目列表和所选项目:

<ComboBox x:Name="myComboBox"
          ItemsSource="{Binding Items}"
          SelectedValue="{Binding SelectedItem}" />

不要忘记将 DataContext 设置为您的视图模型。

【讨论】:

  • 我在使用 MVVM,你能提供简单的例子吗
  • 只需将要显示的文本添加为​​绑定列表中的“默认”选择。在视图模型的构造函数或初始化方法中,只需将组合框的 SelectedItem 设置为要显示的元素。 SelectedItem = Items[0];
  • 你能举个例子吗...目前我有 ItemsSource="{StaticResource myStrings}"
  • 非常感谢您的支持!!!!!!,我现在使用这样的属性更改,我应该如何让它采用您的代码集{ _isDataLoaded = value; OnPropertyChanged("IsData"); }
  • 您的代码也可以使用 OnPropertyChanged("IsData");如果对您有帮助,请记住将答案设置为正确答案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-07-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-04-01
相关资源
最近更新 更多