0

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 を使用してテストしていましたが、問題なく動作しました。

私が今得るのはコンパイルエラーです:

非静的フィールド、メソッド、またはプロパティにはオブジェクト参照が必要です

これは、テキストボックスに正しく対処していないことを示唆しています。

ミッキー マウスの要素を許してください。

ありがとうございます。

スティーブ。

4

1 に答える 1

1

フォームへの参照が必要な場合や、フォーム内の textbox1 にアクセスする場合など、何らかのイベントやコンストラクターが必要です。例えば:

// フォーム内 (イベントまたはコンストラクター内)。
this.textbox1.Text = GeneralFunctions.SplitFile(some_parameter_here);

静的クラスからフォームにアクセスする場合は、シングルトンにするか、実際のフォームへの参照を保持する静的プロパティを作成します。

于 2012-12-14T00:51:47.223 に答える