.Netアプリケーション(V4 C#VS2010)にDataGridViewがあり、ボタンをクリックするだけですべてのデータをクリップボードにコピーしたいと考えています。問題ない -
private void copyToClipboard()
{
dataGridView1.SelectAll();
DataObject dataObj = dataGridView1.GetClipboardContent();
if (dataObj != null)
Clipboard.SetDataObject(dataObj);
}
問題は、ユーザーがすでにDataGridでいくつかのセルや行などを選択している可能性があり、その選択を実際に変更したくないということです。上記は明らかにすべてを選択します。dataGridView1.ClearSelection(); 最後に、これはわずかに優れていますが、それでも必要なものを達成していません。
選択したセルを保存できます。
var mySelectedCells = dataGridView1.SelectedCells;
しかし、コピー後にDataGridで選択したセルを再選択するにはどうすればよいですか?選択したセルコレクションをDataGridに戻す簡単な方法はありますか?おそらく、現在選択されているセルに影響を与えることなく、グリッド全体を最初にクリップボードにコピーするためのより良い方法がありますか?