プログラムで追加されたTextBoxを使用して、design.csであらかじめ作成されたTextBoxコントロールを使用しています。まず、このTextBoxはユーザーによって埋められ、ボタンonClickメソッドでは、コンテンツはonClickメソッドから呼び出された別のクラスファイルのメソッド内で処理されます。その後、TextBoxにあるものをすべて削除して、初期状態のように空にしたいが、それはうまく動作しない。プログラムで追加されたコントロール(C#)にアクセスできません
/*MainForm.cs*/
private TextBox tb;
private SubForm sf = new SubForm();
private void initTextBox(){
tb = new TextBox();
preExistingPanel.Controls.Add(tb); //attach the textbox onto a panel
}
private void MainForm_Load(object sender, EventArgs e){
initTextBox();
}
private void button_Click(object sender, EventArgs e){
string tbContent = tb.Text;
sf.processData(tbContent);
}
public void EmptyTextBox(){
tb.Text = ""; //This does not work, and nothing happens
}
/*SubForm.cs*/
public void processData(string tbContent){
/*Do something with tbContent*/
...
...
/*Here, I want to empty the textBox*/
MainForm mf = new MainForm();
mf.EmptyTextBox();
}
誰かがこのコードで間違っているものを見つける私を助けてくださいことはできますか?私はそれが知っている
EmptyTextBox()
メソッドが呼び出されますが、何も起こりません。
preExistingPanel、メインフォームとの関係はどのようなもので、サブフォーム?この情報がなければ、誰もあなたを助けることができるとは確信していません – wnvko