I'm changing text (renaming tabs) of tab pages in tab control and I want to access tab page by it's text. The problem is, that these pages are created in code and I couldn't access them by their names
var yourtabs = tabControlFEPages.Controls
.OfType<TabPage>()
.Where(tab => tab.Name.Equals(cmbFEEdytujKarteWybierzKarte.Text))
.ToList();
var index = tabControlFEPages.TabPages.IndexOf(yourtabs[0]).ToString();
MessageBox.Show(index);
foreach (TabPage tab in yourtabs)
{
MessageBox.Show(tab.ToString());
}
tabControlFEPages.TabPages[index].Text = txtFEEdytujKarteNowaNazwa.Text;
That's what I wanted:
var yourtabs = tabControlFEPages.Controls.OfType<TabPage>().Where(tab =>
tab.Text.Equals(cmbFEEdytujKarteWybierzKarte.Text)).ToList();
var index = tabControlFEPages.TabPages.IndexOf(yourtabs[0]);
if (!string.IsNullOrEmpty(txtFEEdytujKarteNowaNazwa.Text))
tabControlFEPages.TabPages[index].Text =
txtFEEdytujKarteNowaNazwa.Text.ToString();