您的位置:首页 > 其它

Winform DatagridView 自由实现多选,-----右键弹出框解决方式

2011-07-11 14:22 387 查看
不需要按辅助键(shift),随意选择
条件,C# winform,Datagridview 控件(MultiSelect 为true),contextMenuStrip控件(包含两个item,选中,取消)

在Datagridview 的 以下事件中 加入
private void dataGridView2_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
{
if (e.Button == MouseButtons.Right && this.dataGridView2.SelectedRows.Count > 1)
{
this.contextMenuStrip.Show(MousePosition.X, MousePosition.Y);
this.dataGridView2.ContextMenuStrip = this.contextMenuStrip;
}
else
{
this.dataGridView2.ContextMenuStrip = null;
return;
}
}

以下是 contextMenuStrip控件(包含两个item,选中,取消) 控件的 选中和 取消 事件

private void 选中ToolStripMenuItem1_Click(object sender, EventArgs e)
{
try
{
if (this.dataGridView2.SelectedRows.Count < 0)
{
return;
}
else
{
foreach (DataGridViewRow dgr in this.dataGridView2.SelectedRows)
{
dgr.Cells["checkbox"].Value = 1;
}
}
}
catch
{
}
}
private void 取消ToolStripMenuItem1_Click(object sender, EventArgs e)
{
try
{
if (this.dataGridView2.SelectedRows.Count < 0)
{
return;
}
else
{
foreach (DataGridViewRow dgr in this.dataGridView2.SelectedRows)
{
dgr.Cells["checkbox"].Value = 0;
}
}
}
catch
{
}
}

希望有帮助
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: