我有一个带有datagridview的结算表单。此表单包含更新最后一个帐单按钮,该按钮打开一个新窗口,要求输入帐单编号。我正在根据帐单编号获取值,并希望以其他形式显示它。如何将表值从一个表单传递到另一个表单datagridview?
SqlConnection con = new SqlConnection(CS);
con.Open();
SqlDataAdapter da = new SqlDataAdapter("SELECT * FROM POS WHERE Bill_No=@Billno", con);
da.SelectCommand.Parameters.AddWithValue("@Billno", txt_EnterBillNoPOS.Text);
我想存储此结果并将其显示在另一个表格datagridview中。
答案 0 :(得分:0)
如果我以正确的方式理解您的问题,您希望将子格式的数据传输回Mainform。为此,您可以在子窗体上使用属性(例如,有许多可能的解决方案)。这看起来很......像这样:
//Your third Form filled with billdata from second Form.
public class ThirdForm : Form
{
public ThirdForm(DataTable billData)
{
InitializeComponent();
yourGrid.DataSource = billData;
}
}
//Your secondform fetch the data and start the thirdform
public class SecondForm : Form
{
private void OnUpdateButton_Clicked(object sender, EventArgs e)
{
SqlConnection con = new SqlConnection(CS);
con.Open();
SqlDataAdapter da = new SqlDataAdapter("SELECT * FROM POS WHERE Bill_No=@Billno", con);
da.SelectCommand.Parameters.AddWithValue("@Billno", txt_EnterBillNoPOS.Text);
DataTable result = new DataTable();
da.Fill(result); //Fill your Table with data
//Here you pass the data via Constructor
var thirdForm = new ThirdForm(result);
thirdForm.Show();
}
}
//The firstform which starts your flow by activating secondform
public class FirstForm : Form
{
private void OnUpdateLastButton_Clicked(object sender, EventArgs e)
{
var childForm = new SecondForm();
childForm.Show(); //Shows the second form
}
}
这应该对你有帮助。