Я пытаюсь добавить TabPage и внутри него текстовое поле. Проблема в том, что если у меня больше вкладок, содержимое TextBox всегда является последним добавленным, а не выбранным TabPage.Добавление вкладок с элементами управления внутри них динамически?
EDIT 3 //
public partial class Form1 : Form
{
int tabcount = 0;
TextBox TextE;
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
// Create a new textbox to add to each control
TextE = new TextBox();
// Fill the tabpage
TextE.Dock = DockStyle.Fill;
TextE.Multiline = true;
// Create new tab page and increment the text of it
TabPage tab = new TabPage();
tab.Text = "Tab" + tabcount.ToString();
// Add Textbox to the tab
tab.Controls.Add(TextE);
// Add tabpage to tabcontrol
tabControl1.Controls.Add(tab);
tabcount++;
}
private void button2_Click(object sender, EventArgs e)
{
// Text content to messagebox...
MessageBox.Show(TextE.Text);
}
}
Я попытался изменить код, как предложено; однако, я получаю сообщение об ошибке. – xterminal0
Вы пытаетесь назначить строку в качестве элемента управления. Используйте строку в качестве индекса коллекции Controls и назначьте этот элемент управления текстовому комментатору – tinstaafl
Controls.IndexOf (TextEditor) .ToString() всегда показывает -1, теперь важно, сколько элементов управления было добавлено. Я не могу понять, почему? – xterminal0