C# 如何允许用户从列表框复制项目并粘贴到windows窗体之外
我知道,对于数据网格,用户可以选择项目,复制它们,然后将它们粘贴到表单之外。有没有一种方法可以通过列表框实现这一点?看起来您可以在列表框中选择多个项目,但如果您尝试将所选值粘贴到表单之外,它似乎不会实际复制该项目。当用户单击ctrl+c将项目放入剪贴板时,您可以捕获该事件 此代码用于具有多选功能的列表框C# 如何允许用户从列表框复制项目并粘贴到windows窗体之外,c#,C#,我知道,对于数据网格,用户可以选择项目,复制它们,然后将它们粘贴到表单之外。有没有一种方法可以通过列表框实现这一点?看起来您可以在列表框中选择多个项目,但如果您尝试将所选值粘贴到表单之外,它似乎不会实际复制该项目。当用户单击ctrl+c将项目放入剪贴板时,您可以捕获该事件 此代码用于具有多选功能的列表框MultiSimple=true private void ListBox1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
MultiSimple=true
private void ListBox1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
{
if (e.Control && e.KeyCode == Keys.C)
{
System.Text.StringBuilder copy_buffer = new System.Text.StringBuilder();
foreach (object item in ListBox1.SelectedItems)
copy_buffer.AppendLine(item.ToString());
if (copy_buffer.Length > 0)
Clipboard.SetText(copy_buffer.ToString());
}
}
要通过Ctrl+C复制所选项目,请使用以下代码:
private void LstVehicles_KeyDown(object sender, KeyEventArgs e)
{
if (e.Control && (e.KeyCode == Keys.C))
{
Clipboard.SetText(this.yourListBoxName.SelectedItem.ToString());
}
}
“将它们粘贴到表单之外”是什么意思?@ChrisDunaway如果他们有word文档,他们将能够粘贴复制到表单中的选定值。很高兴为您提供帮助!!在.Net的较新版本中,您可能会在剪贴板.SetText()上遇到问题(随机错误并不意味着什么)。改为使用剪贴板.SetDataObject()。