Ich versuche eine DataGridViews-Zeile als Bitmap zu erhalten, um sie als Cursorsymbol zu verwenden. Leider hat das DataGridViewRow-Objekt keine DrawToBitmap-Methode.Wie bekomme ich eine DataGridView-Zeile als Bitmap für ein Cursorsymbol?
Ich schaffte es, die Grenze der Zeile (RowRect) zu bekommen und eine Bitmap des gesamten DataGridView (BMP) zu bekommen. Ich denke, dass ich als nächstes die Reihe von der Bitmap schneiden muss, aber ich habe keine Idee, wie man das macht.
Hier ist mein Startcode:
private void dataGridView1_MouseDown(object sender, MouseEventArgs e)
{
if (dataGridView1.SelectedRows.Count == 1)
{
if (e.Button == MouseButtons.Left)
{
rw = dataGridView1.SelectedRows[0];
Rectangle RowRect = dataGridView1.GetRowDisplayRectangle(rw.Index, true);
Bitmap bmp = new Bitmap(RowRect.Width, RowRect.Height);
dataGridView1.DrawToBitmap(bmp, new Rectangle(Point.Empty, bmp.Size));
Cursor cur = new Cursor(bmp.GetHicon());
Cursor.Current = cur;
rowIndexFromMouseDown = dataGridView1.SelectedRows[0].Index;
dataGridView1.DoDragDrop(rw, DragDropEffects.Move);
}
}
}