Модераторы: gambit, Partizan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Наследование, добавление кнопок на toolBox 
:(
    Опции темы
Dimyan
Дата 10.4.2006, 10:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 441
Регистрация: 12.1.2004
Где: Новосибирск

Репутация: нет
Всего: 4



Наследуюсь от формы на которой лежит ToolBox с кнопками с уровнем доступа public но на унаследованной форме ToolBox заблокирован и добавить кнопку невозможно. Както можно это исправить может еще какое свойство есть?


--------------------
Как хорошо ничего не делать, а потом еще немного отдохнуть :)
PM MAIL ICQ   Вверх
mr.DUDA
Дата 10.4.2006, 11:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 24
Всего: 232



Цитата(Dimyan @ 10.4.2006, 09:34 Найти цитируемый пост)
Наследуюсь от формы на которой лежит ToolBox с кнопками с уровнем доступа public но на унаследованной форме ToolBox заблокирован и добавить кнопку невозможно. Както можно это исправить может еще какое свойство есть?

Как наследуемся ? Добавляем форму и изменяем базовый класс ? Или "Add Inherited Form..." и выбираем базовый класс из списка ? Нужно юзать второй вариант, это может решить проблему.


--------------------
user posted image
PM MAIL WWW   Вверх
Domestic Cat
Дата 10.4.2006, 11:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5452
Регистрация: 3.5.2004
Где: Dallas, US

Репутация: нет
Всего: 172



А ребилд не помогает?


--------------------

PM   Вверх
Dimyan
Дата 11.4.2006, 06:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 441
Регистрация: 12.1.2004
Где: Новосибирск

Репутация: нет
Всего: 4



Именно Add Inherited Form...
Цитата
А ребилд не помогает?

нет smile
Добавлено @ 06:03
Забыл сказать VS2005 , если имеет значение


--------------------
Как хорошо ничего не делать, а потом еще немного отдохнуть :)
PM MAIL ICQ   Вверх
-ser-
Дата 11.4.2006, 06:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 344
Регистрация: 1.2.2005

Репутация: 4
Всего: 13



у меня все работает как надо через Add Inherited...

а что за toolbox такой?

toolstrip, допустим я знаю в 2005 что такое.


--------------------
"Тонкая, однако, работа." 
PM MAIL ICQ   Вверх
Dimyan
Дата 11.4.2006, 08:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 441
Регистрация: 12.1.2004
Где: Новосибирск

Репутация: нет
Всего: 4



Цитата
а что за toolbox такой?

toolstrip, допустим я знаю в 2005 что такое.


вообще то это одно и тоже
или к словам придираешся?


--------------------
Как хорошо ничего не делать, а потом еще немного отдохнуть :)
PM MAIL ICQ   Вверх
Gesha
Дата 11.4.2006, 10:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 170
Регистрация: 5.10.2005

Репутация: 2
Всего: 2



Попробуй следующим образом:
На форме, от которой наследуешься создаешь MyToolBox (MyToolStrip) от ToolBox (ToolStrip) и уже его кидаешь на форму. Делаешь с ним то, что тебе надо.
Потом все также, как ты и делал!
И все будет работать!
(Такая же тема с меню и еще чем-то, не помню)
--------------------
PM MAIL ICQ   Вверх
-ser-
Дата 11.4.2006, 10:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 344
Регистрация: 1.2.2005

Репутация: 4
Всего: 13



Цитата(Dimyan @ 11.4.2006, 08:55 Найти цитируемый пост)
или к словам придираешся?
да че мне придираться, думал может сторонний компонент какой.

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



--------------------
"Тонкая, однако, работа." 
PM MAIL ICQ   Вверх
mr.DUDA
Дата 11.4.2006, 10:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 24
Всего: 232



Иногда бывает и так, что в унаследованной форме (контроле) кнопки и т.п. контролы как бы заблокированы, на них синие значки стоят. И нельзя ни передвинуть, ни текст поменять и т.п. С чем это связано, я не разобрался, нужно умные книжки по Windows Forms почитать...


--------------------
user posted image
PM MAIL WWW   Вверх
Gesha
Дата 11.4.2006, 10:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 170
Регистрация: 5.10.2005

Репутация: 2
Всего: 2



mr.DUDA, про это написано в МСДН (ссылочку правда не дам smile )
Все должно работать так, как я написал.
--------------------
PM MAIL ICQ   Вверх
Dimyan
Дата 12.4.2006, 12:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 441
Регистрация: 12.1.2004
Где: Новосибирск

Репутация: нет
Всего: 4



Попробывал и нифига smile( Все так же smile
притом исходя из этого _http://www.gotdotnet.ru/Forums/Windows/303728.aspx не у меня одного такие проблемы
попробывал даже на DevExpress'овском barManagere там добился того что можно свои кнопки создать, но все ровно их в запущенном приложении не видно smile
Добавлено @ 12:25
Gesha, а можно подробнее как создать на форме унаследованный компанент?


--------------------
Как хорошо ничего не делать, а потом еще немного отдохнуть :)
PM MAIL ICQ   Вверх
Gesha
Дата 13.4.2006, 14:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 170
Регистрация: 5.10.2005

Репутация: 2
Всего: 2



Смотри сюда. Тут описано!
--------------------
PM MAIL ICQ   Вверх
mr.DUDA
Дата 14.4.2006, 22:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 24
Всего: 232



Возможность редактирования complex-контролов, унаследованных из базовой формы (или базового контрола) была специально заблокирована M$ из-за неоднозначностей, возникающих при редактировании коллекций, возможно входящих в состав базовой формы или контрола. Для тех, кто владеет инглишем, вот как описывают ситуацию люди из M$:

Цитата
In short, the issue is that the designer can't always do the right thing if a collection gets modified in the derived from. Generally, if the collection contains value types, it's a real problem because you can't use reference values (e.g. ==) to identify which ones came from the original form, and which came from the derived one when it comes time to spit the code again. What's more is that the designer can't generate "remove's" so if you delete items in the derived form, there's no way to apply that delta, and generally it's just sometehing that can get ugly fast.

So (if I recall correctly), we locked down derived collections in general and the DGV/Toolstrip stuff specifically for these reasons.

The original scenarios for VI were really pretth basic - we wanted people to be able to create templated base forms and then kind of add other controls and things in the derived form (not control collections work a little better since those things are sited and designer has a lot of ways to figure out which came from where). People found a bunch of other interesting ways to use VI that it wasn't really intended for and it's gotten a lot of them in trouble, and we've spent a lot of time supporting it and/or trying to fix some of those things, and it's never quite right - you get in to mutually exclusive situations where fixing this or that breaks another scenario and you can't have it both ways.



--------------------
user posted image
PM MAIL WWW   Вверх
lioness
Дата 29.8.2006, 09:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 82
Регистрация: 27.7.2006

Репутация: нет
Всего: нет



Вот это да !! А я-то думаю, куда исчезло "Add Inherited..."  из VS 2005.
И property у наследника серые  и "неподдающиеся" smile  Думаю, что за дела !  А тут такая история ... 
Кстати, вроде бы смогла я добавить новые кнопки на форму-наследника, но она видна только при запуске, а на дизайнере исчезает. Попробовала вторую кнопку - она видна в дизайнере, а при запуске - нет. Или бросить эти экперименты: категорически форма-наследник не поддастся редактированию??
Ну надо же так: саму идею наследования так изничтожить  smile 
PM MAIL   Вверх
$tatic
Дата 2.9.2006, 14:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 651
Регистрация: 28.1.2005

Репутация: нет
Всего: 22



Не в дизайнере. Ручками естественно можно.
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка Windows Forms | Следующая тема »


 




[ Время генерации скрипта: 0.0542 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.