【发布时间】:2013-02-09 11:44:25
【问题描述】:
我在 winforms 上有一个 datagridview 控件,通过以下事件将“行”拖出数据网格:
private void gridOperations_CellMouseMove(object sender, DataGridViewCellMouseEventArgs e)
{
if ((e.Button & MouseButtons.Left) == MouseButtons.Left)
{
if (Math.Abs(e.X - mouseDownPos.X) >= SystemInformation.DoubleClickSize.Width || Math.Abs(e.Y - mouseDownPos.Y) >= SystemInformation.DoubleClickSize.Height)
{
string[] filesToDrag = { "tmp/generated.log" };
gridOperations.DoDragDrop(new DataObject(DataFormats.FileDrop, filesToDrag), DragDropEffects.Copy);
}
}
}
问题是我在 datagridview 上也有单击和双击事件,双击事件一开始几乎从不执行,除非我在单击时根本不移动鼠标。如何添加“thershold”,以便如果我按住鼠标并将单元格拖动 3 个像素,那么它将触发 gridOperations.DoDragDrop?谢谢!
【问题讨论】:
标签: c# datagridview drag-and-drop