I have a program with many "create new [xxx]" forms (containing text fields, comboboxes, datetime picekrs, etc.) that are subsequently stored in the database. To view this data, I use the corresponding form "view [xxx]", which has a datagridview populated from the database.
When a user clicks on a field in a datagridview, the data must be sent back to the original create form.
So far, I have done this by overloading the "create" form constructor, passing the entire row data from a datagridview:
Example:
VIEW FORM:
private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex > -1)
{
ID = dataGridView1.Rows[e.RowIndex].Cells[0].FormattedValue.ToString();
string posName = dataGridView1.Rows[e.RowIndex].Cells[1].FormattedValue.ToString();
string posDesc = dataGridView1.Rows[e.RowIndex].Cells[2].FormattedValue.ToString();
frmNewStaffPosition frm = new frmNewStaffPosition(posName, posDesc);
frm.Show();
frm.NewTypePositionAdded += new frmNewStaffPosition.AddNewTypeOfStaffPosition(frm_NewTypePositionAdded);
CREATE FORM:
public frmNewStaffPosition( string pos, string desc)
{
InitializeComponent();
tbPositionName.Text = pos;
tbNewStaffPositionDecription.Text = desc;
}
, , , , VIEW, . , .. PK CREATE ?
, MySQL MySQL.