我正试图绕过OO和C#,虽然我已经搜索过但我无法看到答案,所以希望有人可以提供帮助。
我有一个表单(public Form_DaRT_BOM_Main()),上面有一个文本框(textBox1)。它们驻留在MSVS2010生成的文件中。
namespace DaRT_BOM
{
public partial class Form_DaRT_BOM_Main : Form
{
public Form_DaRT_BOM_Main()
}
}
我在Program.cs中有自己的函数,它位于
中public static class GeneralFunctions
{
}
我正在尝试将文字写入文本框,但无法查看应该如何处理。
目前我有:
public static String SplitFile(String FileToSplit)
{
String line;
using (StreamReader reader = new StreamReader(FileToSplit))
{
line = reader.ReadLine();
Form_DaRT_BOM_Main.textBox1 = line;
}
return null;
}
在尝试使用文本框输出之前,我正在使用MessageBox进行测试,并且运行正常。
我现在得到的是编译错误:
非静态字段,方法或属性
需要对象引用这表明我没有正确地处理文本框。
请原谅米老鼠元素,但我仍在努力理解......老狗和新技巧综合症。
感谢您的期待。
史蒂夫。
答案 0 :(得分:1)
您需要在某些事件中或在构造函数中引用表单或访问表单中的textbox1。例如:
//inside the form (in an event or constructor). this.textbox1.Text = GeneralFunctions.SplitFile(some_parameter_here);
如果要从静态类访问表单 - 将其设为单例或创建一些静态属性,该属性将保留对实际表单的引用。