我在form1的文本框中输入一些数据,当form1点击“下一步”按钮进入form2,当点击form2的“开始计算”按钮时程序将调用我自己建立的一个类来进行计算并返回计算结果,但我自己建立的这个类的计算所需数据要从form1当中传递过来。
目前出现的问题是,我进行调试发现从form1向我自己的类传递数据不成功,不知该如何解决。
另外我想问,我在form1中输入的数据我想一直保留(或者说处于可以为我自己的类传递参数的状态),而不是点击“下一步”出现form2后form1中的值就消失。
我说的有点乱,请大家尽量理解!谢谢
目前出现的问题是,我进行调试发现从form1向我自己的类传递数据不成功,不知该如何解决。
另外我想问,我在form1中输入的数据我想一直保留(或者说处于可以为我自己的类传递参数的状态),而不是点击“下一步”出现form2后form1中的值就消失。
我说的有点乱,请大家尽量理解!谢谢
或者把类定义成静态的。
②你别new form1就成了。
如果你希望的你的传人值一直保存那你在就在Form1定义一个public static 成员变量用于保存你传入的值
Form2 f2 = new Form2(textBox1.Text);
if (f2.ShowDialog() == DialogResult.OK)
{
textBox1.Text = f2.TextBoxValue;
}在 Form2 里写:
public Form2(string Param)
{
InitializeComponent();
TextBoxValue = Param;
} private string _txtvalue;
public string TextBoxValue
{
get { return _txtvalue; }
set { _txtvalue = value; }
} private void button1_Click(object sender, EventArgs e)
{
int m = int.Parse(TextBoxValue);
int n = 1;
YourClass cls = new YourClass();
int res = cls.YourMethod(m, n);
TextBoxValue = res.ToString();
DialogResult = DialogResult.OK;
}你的类:
public class YourClass
{
public int YourMethod(int m, int n)
{
return m + n;
}
}
1 数据持久化:保存成文件或者数据库的记录,这个稍微复杂一点。
2 使用方法,传送参数,这个最常见。
3 使用Form2的属性传送。
form1点击事件: form2 f=new from2();
f.formValue=textbox.text;//传递给form2的值
f.ShowDialog();//这样值就传递过去了