2011-11-27 91 views
0

我试图将选定的项目的文件名及其路径复制到剪贴板,然后从列表视图中的文本框。我似乎无法得到这个工作我想要的。这是我一直在玩的代码。C#Winform Listview选择的项目问题

private void listView1_SelectedIndexChanged(object sender, EventArgs e) 
{ 
    if (listView1.Items.Count > 0) 
    { 
     listView1.Items[0].Selected = true; 
     Clipboard.SetDataObject(this.listView1.SelectedItems[0]); 
     textBox1.Paste(); 
    } 
} 

有人能让我走上正轨吗?

+2

为什么要使用只需设置textBox1中的'Text'剪贴板呢? –

+0

@Austin Salonen - 我有另一个需要类似功能的功能,需要我将数据复制到剪贴板。我明白,这可以很容易地完成。我只想一石二鸟。 :) – Beak

回答

1
private void listView1_SelectedIndexChanged(object sender, EventArgs e) { 
     if (listView1.SelectedItems.Count > 0) { 
      textBox1.Text = listView1.SelectedItems[0].Text; 
     } 
     else { 
      textBox1.Text = string.Empty; 
     } 
    } 
+0

谢谢!起初我将这段代码添加到了我的表单中,但仍然没有结果。所以我创建了一个新项目并创建了一个快速测试表单并且工作正常。我必须用我的表单纠正另一个问题。 – Beak

3

我不确定你为什么在这里使用剪贴板。没有它你可以做得很好。

listView1.Items[0].Selected = true; 
textBox1.Text = this.listView1.SelectedItems[0].ToString();