Как я могу предотвратить изменение в Designer модификаторов элемента управления на private? - PullRequest
1 голос
/ 22 сентября 2011

Когда в Designer я меняю свойство DataGridViewColumn, для которого я ранее вручную изменил модификатор на public в файле .Designer.cs, модификатор возвращается к private .

Есть ли способ предотвратить это?

1 Ответ

2 голосов
/ 22 сентября 2011

Я бы порекомендовал не менять конструктор.

Если вам действительно нужно, чтобы ваши элементы управления были общедоступными, я бы порекомендовал добавить свойство для их отображения в файле кода (а не в файле дизайнера):

public TextBox MyTextBox { get { return this.textBox1; } }

Это обеспечит открытый доступ к сгенерированным дизайнером типам, не беспокоясь о том, что дизайнер перезаписывает ваши изменения.

Это также делает это намного более понятным в долгосрочной перспективе, поскольку ваш публичный API определенв вашем основном файле кода, а не во втором, сгенерированном дизайнером файле.

При этом, как правило, я бы этого избегал.Вместо того, чтобы выставлять сам элемент управления, я бы порекомендовал выставить данные , которые вы хотите установить.Возьмите текстовое поле выше - Если бы это текстовое поле было заголовком, я бы раскрыл это непосредственно:

public string Title
{  
    get { return this.textBoxTitle.Text; }
    set { this.textBoxTitle.Text = value; }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...