rendered paste body
public static void CopyListViewToClipboard(ListView listView)
{
StringBuilder sb = new StringBuilder();
if (listView.SelectedItems.Count > 1)
{
for (int i = 0; i < listView.Columns.Count; i++)
{
sb.Append(listView.Columns[i].Text);
if (i != listView.Columns.Count - 1)
{
sb.Append(',');
}
else
{
sb.Append(Environment.NewLine);
}
}
}
lock (listView)
{
foreach (ListViewItem item in listView.SelectedItems)
{
for (int i = 0; i < item.SubItems.Count; i++)
{
ListViewItem.ListViewSubItem si = item.SubItems[i];
sb.Append(si.Text.Contains(",") ? "\"" + si.Text + "\"" : si.Text);
if (i != item.SubItems.Count - 1)
{
sb.Append(',');
}
else
{
sb.Append(Environment.NewLine);
}
}
}
}
Clipboard.SetText(sb.ToString());
}