1) 行右鍵菜單
private void dataGridView1_CellMouseDown(object sender, DataGridViewCellMouseEventArgs e)
{
if (e.Button == MouseButtons.Right){
if (e.RowIndex >= 0){
//若行已是選中狀态就不再進行設定
if (dataGridView1.Rows[e.RowIndex].Selected == false)
{
dataGridView1.ClearSelection();
dataGridView1.Rows[e.RowIndex].Selected = true;
}
//隻選中一行時設定活動單元格
if (dataGridView1.SelectedRows.Count == 1){
dataGridView1.CurrentCell = dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex];
}
if (dataGridView1.CurrentRow != null)
{
int idx = dataGridView1.CurrentRow.Index;
if (idx >= 0)
{
string isexport = mDataTableCun.Rows[idx]["ISEXPORT"].ToString();
if (isexport == "已導出")
{
//彈出操作菜單
contextMenuStrip1.Show(MousePosition.X, MousePosition.Y);
}
}
}
}
}
}
private void dataGridView1_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
{
Rectangle rectangle = new Rectangle(e.RowBounds.Location.X,
e.RowBounds.Location.Y,
dataGridView1.RowHeadersWidth - 4,
e.RowBounds.Height);
TextRenderer.DrawText(e.Graphics, (e.RowIndex + 1).ToString(),
dataGridView1.RowHeadersDefaultCellStyle.Font,
rectangle,
dataGridView1.RowHeadersDefaultCellStyle.ForeColor,
TextFormatFlags.VerticalCenter | TextFormatFlags.Right);
}
private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
if (e.ColumnIndex == 2)
{
dataGridView1.EndEdit();
string ischeck = dataGridView1.Rows[e.RowIndex].Cells["visible"].Value.ToString();
if (ischeck == "0")
{
dataGridView1.Rows[e.RowIndex].Cells["edit"].Value = "0";
}
}
}