我有一个表单( form1 ),其中dataGridView列出了名为“订单”的表格中的客户订单。当在dataGridView中选择订单并按下EnterKey时,会弹出另一个表单( form2 )。这个弹出窗体2有另一个dataGridView,它支持在用户输入与所选订单相关的新记录的行中添加一行名为“ OrderDetails ”的表,该表有一个名为OrderNumber的foreigh键列,它引用OrderNumber列在“订单”表中。
问题:
当用户从form2上的dataGridView输入新记录到orderDetails表时,我希望自动填充OrderNumber列。它的值应该是form1上所选记录的订单号值,这样用户就不必手动输入它,因为它已经知道了。帮助
datagridview绑定到bidningSource。
答案 0 :(得分:3)
让它以我想要的方式工作
private void dataGridView1_DefaultValuesNeeded(object sender,
System.Windows.Forms.DataGridViewRowEventArgs e)
{
e.Row.Cells["CustomerNumber"].Value = myOrderNumberValue;
}
答案 1 :(得分:2)
你可以捕获一个名为'AddingNew'的BindingSource上的事件。在这里,您可以指定新对象及其属性的内容。像这样:
private void BindingSource_AddingNew(object sender, System.ComponentModel.AddingNewEventArgs e)
{
OrderDetailLIne odl = new OrderDetailLIne();
odl.OrderNumber = _orderNumber;
e.NewObject = odl;
}