доступ к членам частного класса
Вопрос
У меня возникла ситуация, когда мне нужно получить доступ к частным членам класса во встроенном частном классе.Как я могу сделать это эффективно.
public partial class Form1 : Form
{
// this private label will be used only in this form
private class MyFormLabel : Label
{
MyFormLabel()
{
this.BorderStyle = BorderStyle.FixedSingle;
// ?? how to pass the from label_Click (without delegates)?
this.Click +=new EventHandler(????);
}
}
public Form1()
{
InitializeComponent();
}
private void label_Click(object sender, EventArgs e)
{
// displays the form caption
MessageBox.Show(this.Text);
}
}
Примечание:Элементы управления я добавляю в форму динамически, чтобы быть уверенным, что после создания они уже подписаны на это событие.
Решение
Вы можете получить доступ к частным членам классов из вложенных классов.Конечно, для доступа к методу экземпляра вам все равно понадобится экземпляр класса.
Другие советы
В этом случае просто сделайте это наоборот, например.после InitializeComponent()
сделай myFormLabel.Click += label_Click
Не связан с StackOverflow