C# 如何将ListView中的选定项设置为文本框?
如何将ListView中的选定项设置为文本框C# 如何将ListView中的选定项设置为文本框?,c#,wpf,listview,C#,Wpf,Listview,如何将ListView中的选定项设置为文本框 private void txtautosgn_TextChanged(object sender, TextChangedEventArgs e) { if (txtautosgn.Text.Length > 1) { var names = (from autonames in lstDetails where autonames.name.Contains(txta
private void txtautosgn_TextChanged(object sender, TextChangedEventArgs e)
{
if (txtautosgn.Text.Length > 1)
{
var names = (from autonames in lstDetails
where autonames.name.Contains(txtautosgn.Text.Trim())
select autonames.name).ToList();
if (names.Count > 1)
{
lstnames.Items.Clear();
lstnames.Visibility = Visibility.Visible;
foreach (string name in names)
{
lstnames.Items.Add(name);
}
lstnames.SelectedIndex = 0;
}
else
{
lstnames.Visibility = Visibility.Collapsed;
}
}
}
在您的方法中,不要在
ListView
中添加项,而是将其设置为ItemsSource
:
var names = (from autonames in lstDetails
where autonames.name.Contains(txtautosgn.Text.Trim())
select autonames.name).ToList();
if (names.Count > 1)
{
lstnames.Items.Clear();
lstnames.Visibility = Visibility.Visible;
lstnames.ItemsSource = names;
lstnames.SelectedIndex = 0;
}
else
{
lstnames.Visibility = Visibility.Collapsed;
}
在Xaml中,您可以将Listview
的SelectedItem
绑定到Textbox
as
<Grid>
<TextBox Text="{Binding SelectedItem, ElementName=lstnames}"></TextBox>
<ListView x:Name="lstnames"></ListView>
</Grid>