Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将一个表单数据传递给另一个表单datagridview_C#_Sql Server_Windows_Winforms_Visual Studio - Fatal编程技术网

C# 将一个表单数据传递给另一个表单datagridview

C# 将一个表单数据传递给另一个表单datagridview,c#,sql-server,windows,winforms,visual-studio,C#,Sql Server,Windows,Winforms,Visual Studio,我有一个带有datagridview的账单表单。此表单包含“更新上次账单”按钮,该按钮将打开一个新窗口,要求输入账单编号。我正在获取基于账单编号的值,并希望以另一种形式显示它。如何将表值从一个窗体传递到另一个窗体datagridview SqlConnection con = new SqlConnection(CS); con.Open(); SqlDataAdapter da = new SqlDataAdapter("SELECT * FROM PO

我有一个带有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);

我想存储此结果并将其显示在另一个forms datagridview中。

如果我正确理解您的问题,您希望将数据从子表单传输回主表单。为此,您可以使用子窗体上的属性(例如,有许多可能的解决方案)。这看起来像这样:

//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
    }
}

这应该会对您有所帮助。

任何相关代码都会对您帮助最大……我已经更新了代码。基本上,您可以通过在目标表单中拥有一个公共属性并从主/调用方表单将其分配给您的数据表来实现这一点。但如果没有进一步的细节,就很难指出错误的确切位置。您是否将这些数据读入数据表?是的。我的问题是。。我有一个带有datagridview的表单。另一个带有文本框和更新按钮的表单。我想在文本框中获取账单编号,当我按update时,我想根据账单编号从数据库中获取值,并将其显示在另一个表单datagridview中。这些表单只有2个。我的问题是。。我有一个带有datagridview的表单。另一个带有文本框和更新按钮的表单。我想在文本框中获取票据编号,当我按“更新”时,我想根据票据编号从数据库中获取值,并将其显示在另一个表单datagridview中。@Abhijith“另一个表单”是指第三个表单还是第三个表单?共有3个表单。第一个表单包含销售点详细信息。我添加了一个按钮来更新上次的账单销售。所以我增加了第二张表格来获得账单号。它包含一个更新按钮。我还有一个第三个表单,其中包含gridview。因此,当我们在第二张表格中输入票据编号并按update时,基于第二张表格中票据编号的详细信息应显示在第三张表格datagridvirew中。这是我的主意。希望你明白了。