Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Поле Text в UserContol

1.7K
11 июня 2006 года
alektrik
140 / / 16.01.2006
Почему когда я создаю UserControl, в свойствах (properties) этого объекта нет поля Text? Когда создаешь своё поле/свойство Text компилятор грит, что такое уже есть (warning), добавляем "new" - перестает ругаться, но толку от этого мало... исходник control'a в аттаче
273
11 июня 2006 года
3A3-968M
1.2K / / 22.12.2005
[quote=alektrik]Почему когда я создаю UserControl, в свойствах (properties) этого объекта нет поля Text? Когда создаешь своё поле/свойство Text компилятор грит, что такое уже есть (warning), добавляем "new" - перестает ругаться, но толку от этого мало... исходник control'a в аттаче[/quote]
Тебе нужно переопределить свойство Text, ведь в базовом классе Control свойство текст виртуальное:
 
Код:
[SIZE=2][BindableAttribute([/SIZE][SIZE=2][COLOR=#0000ff]true[/COLOR][/SIZE][SIZE=2])][/SIZE]
[SIZE=2][LocalizableAttribute([SIZE=2][COLOR=#0000ff]false[/COLOR][/SIZE][SIZE=2])][/SIZE]
[/SIZE][SIZE=2][COLOR=#0000ff]public [/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]virtual [/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]string[/COLOR][/SIZE][SIZE=2] Text { [/SIZE][SIZE=2][COLOR=#0000ff]get[/COLOR][/SIZE][SIZE=2]; [/SIZE][SIZE=2][COLOR=#0000ff]set[/COLOR][/SIZE][SIZE=2]; }
[/SIZE]

Поэтому тебе нужно его переопределить. Например так:
Код:
[BindableAttribute([SIZE=2][COLOR=#0000ff]false[/COLOR][/SIZE][SIZE=2])][/SIZE][SIZE=2]
[/SIZE][SIZE=2][COLOR=#0000ff]public [/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]override [/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]string[/COLOR][/SIZE][SIZE=2] Text [/SIZE]
[SIZE=2]{ [/SIZE]
[SIZE=2][COLOR=#0000ff] get[/COLOR][/SIZE]
[COLOR=black] {[/COLOR]
    [COLOR=blue]return[/COLOR] base.Text;
[COLOR=black] }[/COLOR]
[SIZE=2][COLOR=#0000ff] set[/COLOR][/SIZE]
[SIZE=2] {
    [COLOR=blue]base[/COLOR].Text = [COLOR=blue]value[/COLOR];[/SIZE]
 }
[SIZE=2]}[/SIZE]
1.7K
17 июня 2006 года
alektrik
140 / / 16.01.2006
Всё равно не появляется... Properties - это такое окошечко справа-снизу обычно в MS VS IDE...
273
17 июня 2006 года
3A3-968M
1.2K / / 22.12.2005
[quote=alektrik]Всё равно не появляется... Properties - это такое окошечко справа-снизу обычно в MS VS IDE...[/quote]
Добавь аттрибут [SIZE=2][COLOR=#008080]BrowsableAttribute[/COLOR][/SIZE][SIZE=2]([/SIZE][SIZE=2][COLOR=#0000ff]true[/COLOR][/SIZE][SIZE=2]) к свойству. Этот атрибут с параметром true означает, что свойство будет отображаться в Properties. Кароч, будет так:[/SIZE]
Код:
[LEFT][BindableAttribute([SIZE=2][COLOR=#0000ff]false[/COLOR][/SIZE][SIZE=2])][/SIZE]
[BrowsableAttribute([COLOR=#0000ff]true[/COLOR][SIZE=2])][/SIZE][SIZE=2]
[/SIZE][SIZE=2][COLOR=#0000ff]public [/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]override [/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]string[/COLOR][/SIZE][SIZE=2] Text [/SIZE]
[SIZE=2]{ [/SIZE]
[SIZE=2][COLOR=#0000ff] get[/COLOR][/SIZE]
[COLOR=black] {[/COLOR]
    [COLOR=blue]return[/COLOR] base.Text;
[COLOR=black] }[/COLOR]
[SIZE=2][COLOR=#0000ff] set[/COLOR][/SIZE]
[SIZE=2] {
    [COLOR=blue]base[/COLOR].Text = [COLOR=blue]value[/COLOR];[/SIZE]
 }
[SIZE=2]}[/SIZE][/LEFT]



[LEFT]Атрибут Browsable находится в System.ComponentModel.
[/LEFT]
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог