Winforms 如何将值传递给运行窗体
我有两张表格:表格一和表格二 Form1开始使用Application.Run()运行 如果用户开始编辑datagridview,则Form1具有datagridview 我在CellBeginEdit事件中这样运行Form2Winforms 如何将值传递给运行窗体,winforms,c#-3.0,Winforms,C# 3.0,我有两张表格:表格一和表格二 Form1开始使用Application.Run()运行 如果用户开始编辑datagridview,则Form1具有datagridview 我在CellBeginEdit事件中这样运行Form2 Form2 addStock = new Form2(productNo, stockString, this); addStock.Activate(); addStock.Show(); 在Form2完成任务后,当我单击Form2上的按钮时,我希望得到返回Form1
Form2 addStock = new Form2(productNo, stockString, this);
addStock.Activate();
addStock.Show();
在Form2完成任务后,当我单击Form2上的按钮时,我希望得到返回Form1的值,并显示在Form1上的DataGridView中,然后关闭Form2
我试图传递Form1的对象
Form2 addStock=新的Form2(productNo,stockString,this)
但在Form2上,我无法使用该对象访问Form1的DataGridview
如何才能做到这一点?我建议创建一个自定义类并创建一些静态成员,当您导航到form2 jux时,请检查它们
class CustomClass
{
public static int ProductNo;
public static string StockString;
}
//这些是从form1调用form2
CustomClasss.ProductNo=12; //some value
CustomClass.StockString="Some Value";
Form2 addStock = new Form2();
addStock.Activate();
addStock.Show();
现在在表单2中调用这些自定义类成员,并根据您的需要进行验证
像
希望它能帮助x..将
公共属性添加到表单2中。在完成计算后,无论您在Form2中做什么,都将值设置为这些属性。现在,这些值可以在From1中使用您创建的用于显示Form2的相同From2实例进行访问
现在在From1中访问Form2的属性值
Form2 addStock = new Form2(productNo, stockString, this);
addStock.Activate();
addStock.Show();
//Reading the property value of Form2
string stockValue = addStock.StockStringProperty;
“但是在Form2上,我无法使用该对象访问Form1的DataGridview”将DataGridview的Modifiers()属性更改为Public。如果您想保持OOP的外观,请通过公共属性公开DataGridView。
Form2 addStock = new Form2(productNo, stockString, this);
addStock.Activate();
addStock.Show();
//Reading the property value of Form2
string stockValue = addStock.StockStringProperty;