Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 设置listbox WPF的选定值_C#_Wpf_Listbox - Fatal编程技术网

C# 设置listbox WPF的选定值

C# 设置listbox WPF的选定值,c#,wpf,listbox,C#,Wpf,Listbox,我最初在列表框中添加了一些字符串对象,然后我想设置所选的项目: List <string> CustName = new List<string>(); ....///add items to CustName///... listBox1.ItemsSource = CustName; string selection = "myselection" ///this string is contained in CustName listBo

我最初在
列表框中添加了一些字符串对象,然后我想设置所选的项目:

List <string> CustName = new List<string>();

....///add items to CustName///...      

listBox1.ItemsSource = CustName;
string selection = "myselection" ///this string is contained in CustName      
listBox1.SelectedValue = selection; 
List CustName=new List();
....///将项目添加到CustName//。。。
listBox1.ItemsSource=CustName;
string selection=“myselection”///此字符串包含在CustName中
listBox1.SelectedValue=选择;
但是,如果上述操作不起作用,则所选项目是
列表框的第一个项目,而不是我试图设置的项目

XAML:

  <Grid>
        <ListBox HorizontalAlignment="Left" Name="listBox1" Height="100" Margin="310,172,0,0" VerticalAlignment="Top" Width="100"/>
  </Grid>

code隐藏.cs

 public MainWindow()
    {
        InitializeComponent();
        List<string> CustName = new List<string>();
        CustName.Add("test1");
        CustName.Add("test2");
        CustName.Add("myselection");


        listBox1.ItemsSource = CustName;
        string selection = "myselection";  
        listBox1.SelectedItem = selection;
    }
public主窗口()
{
初始化组件();
List CustName=新列表();
CustName.Add(“test1”);
CustName.Add(“test2”);
客户名称。添加(“我的选择”);
listBox1.ItemsSource=CustName;
字符串选择=“myselection”;
listBox1.SelectedItem=选择;
}

为什么不使用像这样的绑定呢。
XAML:

如果要在代码中手动设置SelectedItem,只需执行MySelectedItem=yourItem


别忘了设置listbox的数据源并实现INotifyPropertChanged

这是我修复的打字错误…我也尝试过SelectedItem,但没有result@apomene检查修改后的答案您是否尝试了
列表框1.SelectedIndex=indexOfMySelection
<ListBox ItemsSource={Binding CustName} SelectedItem={Binding MySelectedItem} />
private string mySelectedItem;
public string MySelectedItem
{
get{return mySelectedItem;}
set
{
mySelectedItem=value;
RaisePropertyChanged("MySelectedItem");
}