2016-08-25 6 views
1

私が開始する前に、私はこのフォーラムに同様の投稿があることを知っていると言いたいと思います。残念ながら私の場合、彼らはうまくいきませんでした。私はそれが私のせいだと確信しています。あなたが私を助けることを願っています。Visual Studio呼び出しメソッドは、otsideクラスによってフォームに配置されました

は、だからここに私の場合です:

私は、端末のように動作し、Windowsのフォームを、書いていました。私はこの端末にテキストを追加する機能を持っています。私はカスタムクラスの内側からこの関数を呼び出す必要があります。

コード:

using System; 
using System.Collections.Generic; 
using System.ComponentModel; 
using System.Data; 
using System.Drawing; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
using System.Windows.Forms; 

namespace terminal 
{ 
    public partial class Form1 : Form 
    { 
     Test testClass = new Test() ; 
     public Form1() 
     { 
      InitializeComponent(); 
     } 

     private void button1_Click(object sender, EventArgs e) 
     { 
      terminal(textBox1.Text); 
     } 

     public void terminal(string text) 
     { 
      richTextBox1.AppendText(text); 
      richTextBox1.AppendText("\n"); 
     } 
    } 

    public class Test 
    { 
     Form1.terminal("sample tekst"); 
    } 
} 

そして、このことは動作しません。私はデバッグを開始すると、私はメモリが上昇するのを見ることができますが、フォームは表示されません。私の問題は、私は関数addToLog()にアクセスできないということです。 LoadSomeFilesクラスから取得します。 Visual Studioでは行全体に下線を引いています

Form1.terminal("sample tekst"); 

赤色です。私がこの種の奇妙なことを書いたら、すみません。私は初心者です。

Suorceファイル:任意の助けProgram

ありがとう!

+2

これはコンパイルされず、問題を示すだけではありません。 – stuartd

+0

プログラム全体が600行を超えています。私はここに彼を置くことはできません。それは読むことができません。私は自分のプログラムの簡単なアイディアを投稿しました。 – MrJW

+0

と何を呼び出すとき? – Raskayu

答えて

0

オブジェクトのインスタンスを作成するだけです。この場合、Form1オブジェクト。 それから、あなたのようにアクセスできます。ここで

は、私が何を意味するかです:

Form1 form1 = new Form1(); 
form1.terminal("sample text"); 

が、これはあなたのお役に立てば幸いです。

関連する問題