110,537
社区成员
发帖
与我相关
我的任务
分享
Form_产品列表 My_产品列表 = new Form_产品列表(dataGridView_销售单明细.Rows[RowIndex].Cells["产品名称"].Value.ToString());
int RowIndex; //选中行
int ColumnIndex;//选中列
private void dataGridView_销售单明细_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
{
if (e.Control is DataGridViewTextBoxEditingControl)
{
DataGridView dgv = (DataGridView)sender;
DataGridViewTextBoxEditingControl tb = (DataGridViewTextBoxEditingControl)e.Control;
tb.KeyDown -= new KeyEventHandler(dataGridView_销售单明细_KeyDown);
RowIndex = dgv.CurrentCell.RowIndex;
ColumnIndex = dgv.CurrentCell.ColumnIndex;
if (dgv.CurrentCell.OwningColumn.Name == "产品名称")
{
tb.KeyDown += new KeyEventHandler(dataGridView_销售单明细_KeyDown);
}
}
}
protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
if (keyData == Keys.Enter)
{
if (dataGridView_销售单明细.Columns[ColumnIndex].Name == "产品名称")
{
Form_产品列表 My_产品列表 = new Form_产品列表(dataGridView_销售单明细.Rows[RowIndex].Cells["产品名称"].Value.ToString());
Point P = new Point(PointToScreen(dataGridView_销售单明细.GetCellDisplayRectangle(ColumnIndex, RowIndex, false).Location).X,
PointToScreen(dataGridView_销售单明细.GetCellDisplayRectangle(ColumnIndex, RowIndex, false).Location).Y + dataGridView_销售单明细.Location.Y + 22);
My_产品列表.Location = P;
My_产品列表.ShowDialog();
if (My_产品列表.DialogResult == DialogResult.OK)
{
dataGridView_销售单明细.Rows[RowIndex].Cells["产品ID"].Value = My_产品列表.return_产品ID;
dataGridView_销售单明细.Rows[RowIndex].Cells["产品名称"].Value = My_产品列表.return_产品名称;
}
return true;
}
else
{
SendKeys.Send("{tab}");
return true;
}
}
return base.ProcessCmdKey(ref msg, keyData);
}