Народ, есть вопрос: есть форма, на ней TabControl, ниже код, где создается новая страница, а на ней кнопка.
private Button n_Button;
private TabPage n_Page;
private void tool_NewPage_Click(object sender, EventArgs e)
{
n_Page = new TabPage();
n_Button = new Button();
n_Button.Parent = n_Page;
n_Button.Text="Кнопка "+pgIndex.ToString();
n_Page.Text = "Новая страница "+pgIndex.ToString();
tabControl1.TabPages.Add(n_Page);
}
Так вот сам вопрос: как мне получить потом доступ к методам, свойствам и событиям этой кнопке на активной вкладке, т.е., например, динамически создалось 10 вкладок, я переключаюсь на 7-ю, как мне поменять надпись на кнопке внутри активной вкладке
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
14.10.05 12:01: Перенесено модератором из '.NET' — TK
Здравствуйте, MuSHaN, Вы писали:
foreach (Control c in tabPage.Controls)
{
Button b = c as Button;
if (c != null)
{
// Ура это кнопка
}
}
... << RSDN@Home 1.1.4 beta 7 rev. 447>>
Здравствуйте, MuSHaN.
Наверное подойдёт что-то вроде того:
tabControl1.TabPages[tabControl1.SelectedIndex].Controls[0].Text="WOW!";
В данном случае получается доступ к надписи на первом попавшемся на закладке контроле, точно так же можно получить доступ к остальным его свойствам, методам и т.п.
ищешь кнопку по названию или по тексту:
foreach( control in tabControl1.TabPages[n].Controls )
{
if( control is Button )
(control as Button).Text = "ggg";
}
примерно так...
данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение
Здравствуйте, mbrodin, Вы писали:
M>Здравствуйте, MuSHaN, Вы писали:
M>M> foreach (Control c in tabPage.Controls)
M> {
M> Button b = c as Button;
M> if (c != null)
M> {
M> // Ура это кнопка
M> }
M> }
M>
Неа, не катит, этот код получает последнюю созданную кнопку, а на активной странице хрен

... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Здравствуйте, suborg, Вы писали:
S>Здравствуйте, MuSHaN.
S>Наверное подойдёт что-то вроде того:
S>tabControl1.TabPages[tabControl1.SelectedIndex].Controls[0].Text="WOW!";
S>В данном случае получается доступ к надписи на первом попавшемся на закладке контроле, точно так же можно получить доступ к остальным его свойствам, методам и т.п.
Пасибки, получилося

... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Здравствуйте, MuSHaN, Вы писали:
Ну естественно вот в этом месте нужно подставить активную страницу.
Код перебирает все контролы на странице
M>>M>> foreach (Control c in tabPage.Controls)
M>>
MSH>Неа, не катит, этот код получает последнюю созданную кнопку, а на активной странице хрен 
... << RSDN@Home 1.1.4 beta 7 rev. 447>>
Здравствуйте, mbrodin, Вы писали:
M>Здравствуйте, MuSHaN, Вы писали:
M>Ну естественно вот в этом месте нужно подставить активную страницу.
M>Код перебирает все контролы на странице
M>>>M>>> foreach (Control c in tabPage.Controls)
M>>>
MSH>>Неа, не катит, этот код получает последнюю созданную кнопку, а на активной странице хрен 
Да это я понял, ну уже все — разобрался suborg помог
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>