1

1 つのアプリケーションから (通常のコピー コマンドを使用して) 名前をコピーし、DataGridView のテキスト セルをダブルクリックしてデータをグリッド セルに貼り付けることができる必要があります。これを達成する方法についてのアイデアはありますか? この機能のためにキーボードの使用を最小限に抑えようとしています。

4

3 に答える 3

8

これは、実際には予想よりも簡単です。

DataGridView で CellDoubleClick イベントを作成し、その中に次のようなコードを配置します。

private void dataGridView1_CellDoubleClick(object sender, DataGridViewCellEventArgs e) {
   dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = Clipboard.GetText();
}
于 2009-10-06T20:05:42.580 に答える
1

ジェネリックをコピーするためにこれを書きました:

        DataGridViewSelectedRowCollection dtSeleccionados = dataGrid.SelectedRows;
        DataGridViewCellCollection dtCells;
        String row;
        String strCopiado = "";
        for (int i = dtSeleccionados.Count - 1; i >= 0; i--)
        {
            dtCells = dtSeleccionados[i].Cells;
            row = "";
            for (int j = 0; j < dtCells.Count; j++)
            {
                row = row + dtCells[j].Value.ToString() + (((j + 1) == dtCells.Count) ? "" : "\t");
            }
            strCopiado = strCopiado + row + "\n";
        }
        try
        {
            Clipboard.SetText(strCopiado);
        }
        catch (ArgumentNullException ex)
        {
            Console.Write(ex.ToString());
        }
于 2010-03-22T23:29:53.753 に答える
1

セル クリック イベントにイベント ハンドラをアタッチし、セル内のテキストを のデータに置き換える必要がありますClipboard.GetText()

于 2009-10-06T20:01:38.067 に答える