2017-03-13 11 views
0

私の意図は、Form1に動的テキストボックスを作成することです。私はClass 'Form1'とClass 'SplBox'を持っています。私はクラス 'SplBox'の動的テキストボックスを宣言しました&それに文字列を渡しました。私が望むのは、この動的テキストボックスを 'Form1'クラス& Form1のメインフォームで表示することです。私は他のクラスで作成されたテキストボックスをC#のwinフォームに動的に表示します。

namespace TxtClassRun 
{ 
    public partial class Form1 : Form 
    { 
     SplBox s1 = new SplBox(); 

     public Form1() 
     { 
      InitializeComponent(); 
     } 

     private void button1_Click(object sender, EventArgs e) 
     { 
      // show the dynamic text box in Form1 
      s1.settxtbox(); 
      s1.Show(); // opening another window. I want it to be in "Form1"   
     } 
    } 

    //New Class 
    public partial class SplBox : Form 
    { 
     //Global declarations 
     TextBox t2 = new TextBox(); 

     public void settxtbox() 
     { 
      t2.Text = "Hello World"; 
      Controls.Add(t2); 
     } 
    } 
} 
+0

サイズ、場所などの属性を設定する必要があります。ここにあなたを始めるためのリンクがあります:https://support.microsoft.com/en-us/help/319266/how-to-programmatically-add-controls-to-windows-forms-at-run-time-by -using-visual-c – obl

+0

あなたが何を求めているのかは不明です。 'SplBox'クラスは' FORM'クラスなので、 'Form1'でボタンをクリックすると新しいフォームが表示されます。 'Text1'を' Form1'に追加するか、新しい 'Form2'を' Form1'の中に保存しますか? – JohnG

+0

1つのフォームでコントロールを作成しますが、それを別のフォームに表示したいのはなぜですか?私には意味がありません。 –

答えて

0

public partial class SplBox : Form 
{ 
    //Global declarations 
    TextBox t2 = new TextBox(); 
    private Form TempOwnerForm; 
    public SplBox(Form TempOwnerForm) { 
     this.TempOwnerForm = TempOwnerForm; 
    } 
    public Form OwnerForm { get { return TempOwnerForm; } set { this.TempOwnerForm = value; } } 

    public void settxtbox() 
    { 
     t2.Text = "Hello World"; 
     TempOwnerForm.Controls.Add(t2); 
    } 
} 

ホープ、

を助け、これを試してみてくださいしたくない - 私の上記のコードでは、新しいフォームは、動的なテキストボックスが表示されているこの新しいフォームで、その後&を開いなっています
+0

こんにちは、あなたの返信のthnx。しかし、それはエラーを報告しています。 "'SplBox.SplBox(Form)'の必須の仮パラメータ 'TempOwnerForm'に対応する引数はありません。"私がやった間違いはありますか? – Bobx

+0

このように呼び出します。 SplBox frm =新しいSplBox(これ); @Bobx – Berkay

+0

私はSplBoxを呼び出すとfrm = "Public partial class Form1:Form"の新しいSplBox(これ)が現時点のコンテキストでは使用できない 'keyword this error'を表示している; @ Berkey – Bobx

関連する問題