Здравствуйте, Yuri, Вы писали:
Y>Здравствуйте, maximkharitonov, Вы писали:
Y>дизайнер проставил, думаю
Y>в дизанере же и убрать
Да, спасибо, насчет дизайнера уже нашел. Сделал следующий рабочий вариант дизайнера:
public override void InitializeNewComponent(System.Collections.IDictionary defaultValues)
{
PropertyDescriptor textPropDesc = TypeDescriptor.GetProperties(Component)["Text"];
if (textPropDesc != null &&
textPropDesc.PropertyType == typeof(string) &&
!textPropDesc.IsReadOnly &&
textPropDesc.IsBrowsable)
{
textPropDesc.SetValue(Component, "");
}
}
Все почти устраивает. "Почти" выражается в том, что теперь при перетаскивании компонента на форму текст
в контроле появляется на мгновение, потом исчезает. Почему-то не работает следующий, на мой взгляд даже
более логичный вариант:
public override void InitializeNewComponent(System.Collections.IDictionary defaultValues)
{
if (defaultValues.Contains("Text"))
defaultValues["Text"] = "";
else
defaultValues.Add("Text", "");
base.InitializeNewComponent(defaultValues);
}
Может есть предположения почему последний вариант не работает?