当我将项目添加到listview时:
private void button1_Click(object sender, RoutedEventArgs e)
{
ListView1.Items.Add(new ListViewItem() { Content = textBox1.Text });
}
然后我在listview选择更改事件中尝试此操作:
private void ListView1_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
FlowDocument dok = new FlowDocument();
dok.Name = ListView1.SelectedItem.ToString();
// or like this
//dok.Name = ListView1.Selectedvalue.ToString();
}
我收到错误
'System.Windows.Controls.ListViewItem:Joe'不是有效值 财产'名称'
添加如下项目:
private void button1_Click(object sender, RoutedEventArgs e)
{
ListView1.Items.Add(textBox1.Text);
}
解决了这个问题,但我做不到这样的事情:
{
foreach (ListViewItem item in ListView1.Items)
{
if (item.Content.ToString() == textBox1.Text)
{
item.Foreground = Brushes.Red;
item.Background = Brushes.Linen;
item.FontSize = 16;
}
}
我想使用第一个选项
ListView1.Items.Add(new ListViewItem() { Content = textBox1.Text });
但我如何将项目内容作为文本分配给文档名称?混乱。
答案 0 :(得分:0)
我认为你的核心问题是你正在尝试获取ListViewItem中包含的文本,但是你正在调用ToString()
,除了你的情况下的'字符串表示'之外你什么都得不到
System.Windows.Controls.ListViewItem: Joe
根据您是否需要与ListViewItem关联的 名称 或 值 ,您可以使用不同的方法
方法1
要获取ListViewItem
的 名称 ,请使用.Name
属性,例如:
ListViewItem i = new ListViewItem();
i.Name;
方法2
如果您想在ListViewItem
中获取 文字值 ,请使用.Text
属性,例如:
ListViewItem i = new ListViewItem();
i.Text;
答案 1 :(得分:0)
解决了问题:
private void ListView1_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
FlowDocument dok = new FlowDocument();
foreach (ListViewItem item in ListView1.Items)
{
if (item.IsSelected == true)
dok.Name = item.Content.ToString();
}
始终必须努力。