![]() |
|
Модераторы: gambit, Partizan |
![]()
|
|
| Sergey_New |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 30.12.2007 Репутация: нет Всего: нет |
Создаю свой MyControl с одним свойством MyButton (коллекция Button).
В дизайнере форм у MyControl в свойстве MyButton в редакторе коллекций добавляю новый Button. Так хотелось бы, но увы :( Помогите справиться!
|
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 16 Всего: 142 |
Честно говоря: проблему не понял. Вот такой код
добавляет кнопку в коллекцию, можешь посмотреть в коде, сгенерированном дизайнером. Другой вопрос, если надо, чтобы кнопка в контрол добавлялась, токда ей надо присвоить свойство Parent или добавить её в коллекцию Controls твоего элемента управления. Но в любом случае проблему надо описать подробнее. Это сообщение отредактировал(а) diadiavova - 13.3.2009, 15:31 -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| Sergey_New |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 30.12.2007 Репутация: нет Всего: нет |
Да, нужно добавлять кнопку в контрол в дизайнере.
У меня не получается правильно написать классы MyControl и MyCollection. В показанном коде кнопка в редакторе коллекций добавляется, но не добавляется в контрол. |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 16 Всего: 142 |
Всё равно данных маловато, реализовать это можно по-разному. Как пример
Здесь в дизайнере задаёшь свойство ButtonCount и кнопки добавляются в контрол(или удаляются). Коллекция Buttons служит только для редактирования свойств кнопок(а не добавления/удаления). Тут возможны варианты, но всего не объяснишь(не зная задачу), а универсальные решения требуют много кода. Это сообщение отредактировал(а) diadiavova - 13.3.2009, 16:18 -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| -Mikle- |
|
|||
![]() Невидимка Vingrad'а ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1672 Регистрация: 22.6.2003 Где: Казахстан, Астана Репутация: 8 Всего: 59 |
Я понял что ты хочешь. Чтобы не писать много, код MyCollection сюда давай. -------------------- Если тебе плюют в спину, значит ты впереди... |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 16 Всего: 142 |
-------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| -Mikle- |
|
|||
![]() Невидимка Vingrad'а ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1672 Регистрация: 22.6.2003 Где: Казахстан, Астана Репутация: 8 Всего: 59 |
Ну тык... с 2003 года тренируюсь
-------------------- Если тебе плюют в спину, значит ты впереди... |
|||
|
||||
| Sergey_New |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 30.12.2007 Репутация: нет Всего: нет |
||||
|
||||
| -Mikle- |
|
|||
![]() Невидимка Vingrad'а ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1672 Регистрация: 22.6.2003 Где: Казахстан, Астана Репутация: 8 Всего: 59 |
ой, не заметил примерно так:
-------------------- Если тебе плюют в спину, значит ты впереди... |
|||
|
||||
| Sergey_New |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 30.12.2007 Репутация: нет Всего: нет |
-Mikle-, спасибо!
Кнопки вставляются. Для полного счастья не хватает, чтобы в редакторе коллекций отбражались ранее вставленные кнопки. При вставке они видны, но после пропадают. |
|||
|
||||
| -Mikle- |
|
|||
![]() Невидимка Vingrad'а ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1672 Регистрация: 22.6.2003 Где: Казахстан, Астана Репутация: 8 Всего: 59 |
Там само свойство MyButton надо пометить каким-то атрибутом, не помню, точно. Он говорит студии о том, как надо сериализовывать это свуойство в код. Помоему из-за этого все... Позже посмотрю....
-------------------- Если тебе плюют в спину, значит ты впереди... |
|||
|
||||
| -Mikle- |
|
|||
![]() Невидимка Vingrad'а ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1672 Регистрация: 22.6.2003 Где: Казахстан, Астана Репутация: 8 Всего: 59 |
DesignerSerializationVisibility(DesignerSerializationVisibility.Content)
Попробуй этот атрибут, вроде он -------------------- Если тебе плюют в спину, значит ты впереди... |
|||
|
||||
| -Mikle- |
|
|||
![]() Невидимка Vingrad'а ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1672 Регистрация: 22.6.2003 Где: Казахстан, Астана Репутация: 8 Всего: 59 |
Еще, наверное, надо спрятать от сериализации свойство Controls:
-------------------- Если тебе плюют в спину, значит ты впереди... |
|||
|
||||
| Sergey_New |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 30.12.2007 Репутация: нет Всего: нет |
||||
|
||||
| -Mikle- |
|
|||
![]() Невидимка Vingrad'а ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1672 Регистрация: 22.6.2003 Где: Казахстан, Астана Репутация: 8 Всего: 59 |
А если его не скрыть, то тогда в коде дизайнера кнопка добавляется дважды, это как-то меня расстраивает. Не красиво это. Далее, какой-то трабл связанный с CollectionBase. Я не стал разбираться в чем именно, просто взял другой класс-родитель. Вот полностью рабочий вариант:
-------------------- Если тебе плюют в спину, значит ты впереди... |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Разработка Windows Forms | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |