Наследование кнопки - PullRequest
       5

Наследование кнопки

3 голосов
/ 03 октября 2010

Я разработал кнопку

Как мне наследовать остальную часть этой кнопки?

button


Является ли этот метод наследования верным?

мой код:

    public class MyButton : Button
{

    public MyButton()
        : base()
    {
        // set whatever styling properties needed here
        this.ForeColor = Color.Blue;
        this.Click += new EventHandler(MyButton_Click);
        this.BackColor = Color.Red;
    }

    void MyButton_Click(object sender, EventArgs e)
    {
        MessageBox.Show("yes");
    }
}

Почему бы не изменить цвет фона?

background color


Все объекты могут быть изменены

За исключением цвета фона

Это нормальная вещь

Нет решения?

Ответы [ 3 ]

9 голосов
/ 03 октября 2010

Вы можете создать новый класс, создать подкласс для стандартной кнопки и внести изменения в стиль в конструкторе.Как только это будет сделано, перестройте ваш проект, и ваш новый компонент должен появиться на панели инструментов в верхнем разделе.Используйте его вместо стандартной кнопки, и вам будет хорошо идти.

public class MyButton : Button
{
    public MyButton() : base()
    {
        // set whatever styling properties needed here
        ForeColor = Color.Red;
    }
}
4 голосов
/ 03 октября 2010

Я предполагаю, что вы хотите: определить 10 кнопок и стилизовать (установить несколько свойств) button1, остальные 9 кнопок должны быть такими же, как button1. Это не наследование в C # . Чтобы удовлетворить ваши требования, вы можете поместить эти 10 кнопок в один список / коллекцию / массив / и т.д. ... один из способов получить кнопки, вероятно, выглядит следующим образом:

var buttons = container.Controls.OfType<Button>();

А затем зациклите список для установки свойств:

foreach(var button in buttons)
{
   //set the common properties.
}
0 голосов
/ 03 октября 2010

Вы можете использовать этот код:

this.BackColor = Color.Red;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...