c#winform dataGridViewマウスtextBoxにデータを表示し、マウスをドラッグ
質問説明:dataGridViewのデータをtextBoxにドラッグしたいのですが
まずフォーム名はForm 1
DataGridViewとtextBoxをフォームにドラッグします.それぞれdataGridView 1とtextBox 1と呼ばれています.
次にフォームをダブルクリックし、フォームのロード時にdataGridViewのデータを表示します.
そしてdataGridView 1のイベントのCellMouseDownイベントを見つけ、イベント名にdataGridView 1_を記入しますCellMouseDownという名前
コードに書いて
そしてtextBox 1のDragDropイベントを見つけます
対応するコードを書く
最後にtextBoxのDragEnterイベントを見つけます
先代を書く
これにより、dataGridView 1からtextBoxにデータをドラッグ&ドロップしてdataGridView 1のリストヘッダをtextBoxに表示することができます.
黒い髪http://heisetoufa.iteye.com
まずフォーム名はForm 1
DataGridViewとtextBoxをフォームにドラッグします.それぞれdataGridView 1とtextBox 1と呼ばれています.
次にフォームをダブルクリックし、フォームのロード時にdataGridViewのデータを表示します.
private void Form1_Load(object sender, EventArgs e)
{
// TODO: “dataSet1.Employees” 。 。
//this.employeesTableAdapter.Fill(this.dataSet1.Employees);
this.dataGridView1.Columns.Add("heisetoufa", "heisetoufa");
this.dataGridView1.Columns.Add("zisetoufa", "zisetoufa");
this.dataGridView1.Rows.Add("heise", "toufa");
this.dataGridView1.Rows.Add("zise", "toufa");
}
そしてdataGridView 1のイベントのCellMouseDownイベントを見つけ、イベント名にdataGridView 1_を記入しますCellMouseDownという名前
コードに書いて
private void dataGridView1_CellMouseDown(object sender, DataGridViewCellMouseEventArgs e)
{
dataGridView1.DoDragDrop(e.ColumnIndex, DragDropEffects.Copy);
}
そしてtextBox 1のDragDropイベントを見つけます
対応するコードを書く
private void textBox1_DragDrop(object sender, DragEventArgs e)
{
int index = -1;
if (e.Data.GetDataPresent(typeof(int)))
{
index = (int)e.Data.GetData(typeof(int));
}
if (index > -1)
textBox1.Text = dataGridView1.Columns[index].Name;
}
最後にtextBoxのDragEnterイベントを見つけます
先代を書く
private void textBox1_DragEnter(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(typeof(int)))
{
e.Effect = DragDropEffects.Copy;
}
else
e.Effect = DragDropEffects.None;
}
これにより、dataGridView 1からtextBoxにデータをドラッグ&ドロップしてdataGridView 1のリストヘッダをtextBoxに表示することができます.
黒い髪http://heisetoufa.iteye.com