Сериализация в код вложенного контрола
От: Аноним  
Дата: 20.09.05 08:26
Оценка:
Добрый день!

Я создаю свой USerControl и помещаю в него вложенный контрол (например, Button).


    public class UserControl1 : System.Windows.Forms.UserControl
    {
        Button m_button;
        
        public Button MyButton
        {
            get
            {
                if ( null == m_button )
                    m_button = new Button();
                return m_button;
            }
            set { m_button = value; }
        }
............




После компиляции, добавления MyControl через ToolBox на форму тестового приложения можно редактировать его свойства в PropertyGrid. В том числе и свойств вложенного Buttona. Но эти изменения не сериализуются в код в секцию инициализации тестовой формы.

Что делать?

Спасибо.
Сериализация в код вложенного контрола
От: Аноним  
Дата: 20.09.05 11:58
Оценка:
Попробуйте для m_button поставить модификатор public. (В дизайнере вашего UserControl-а а не ручками).
Deny everything...


данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение
Re: Сериализация в код вложенного контрола
От: Аноним  
Дата: 20.09.05 13:12
Оценка:
Здравствуйте, Virus Quartirus, Вы писали:

VQ>Попробуйте для m_button поставить модификатор public. (В дизайнере вашего UserControl-а а не ручками).


VQ>
данное сообщение получено с www.gotdotnet.ru

VQ>ссылка на оригинальное сообщение


Попробовал — не помогло. Кстати, а какая разница, руками делать или из дизайнера?

Может это для уважаемых форумчан что-то тривиальное, но я никак не могу разобраться. Ведь если сделать собственный контрол со своим TypeConverter-ом и внедрить его в USerControl1 таким-же образом, то все работает. Но ведь Button имеет же свой TypeConverter, потому как сериализуется в код, если его бросить на форму?
Re: Сериализация в код вложенного контрола
От: Аноним  
Дата: 13.10.05 10:31
Оценка:
public class UserControl1 : System.Windows.Forms.UserControl
{
Button m_button;

[DesignerSerializationVisibility(DesignerSerializationVisibility.Content)]
public Button MyButton
{
get
{
if ( null == m_button )
m_button = new Button();
return m_button;
}
set { m_button = value; }
}


данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение
Re[2]: Сериализация в код вложенного контрола
От: Kant2002  
Дата: 29.10.05 11:42
Оценка:
Здравствуйте, <Аноним>, Вы писали:

Попробуй так
Button m_button;
[DesignerSerializationVisibility(DesignerSerializationVisibility.Content)]
public Button MyButton
{
    get
    {
        if ( null == m_button )
            m_button = new Button();
        return m_button;
    }
    //set { button1 = value; }
}
public void SetMyButton(Button value)
{
    m_button = value;
}
... << RSDN@Home 1.2.0 alpha rev. 0>>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.