C # TabPage наследование - PullRequest
       25

C # TabPage наследование

0 голосов
/ 22 декабря 2010

У меня есть два класса.Первый класс имеет элемент управления TabPage.Я хочу изменить макет TabPage в дочернем классе (класс B).Например, как добавить простую кнопку в элемент управления tabPage в дочернем классе?

Class A
{
   TabPage a;
}
Class B : Class A
{
}

Ответы [ 2 ]

3 голосов
/ 22 декабря 2010

Измените вкладку на общедоступную

    class A
    {
        public TabPage a;
    } 
    class B : A
    {

    }
1 голос
/ 22 декабря 2010

Сначала вам нужно, чтобы TabPage в классе A был общедоступным, затем добавьте элементы управления, которые вы хотите добавить в свою коллекцию элементов управления TabPage;в этом примере я добавил кнопку к TabPage, вы можете добавить еще много элементов управления аналогичным образом.

class A
{
    public TabPage a;
} 
class B : A
{
        //Create a control to add and set its properties
        Button btn = new Button();
        btn.Location = new Point(20, 20);
        btn.Size = new Size(120, 25);
        btn.Text = "My new Button";
        //Add the control to the Tabpage.
        a.Controls.Add(btn);
}

Это действительно зависит от вашей ситуации, если вы хотите, чтобы TabPage был доступен из базового класса,это публично защищено иным образом.

Для защищенных

class A
{
    //Visible only to Inheriting class;
    protected TabPage a;
} 
class B : A
{
        //Create a control to add and set its properties
        Button btn = new Button();
        btn.Location = new Point(20, 20);
        btn.Size = new Size(120, 25);
        btn.Text = "My new Button";
        //Add the control to the Tabpage.
        a.Controls.Add(btn);
        //This will be visible to everybody
        public TabPage b= a;
}
...