[SOLVED] VS2010 глючит создание usercontrol
Создавать каждый раз dll-проект с UserControl'ом, прикручивать его в toolbox как внешний че то грустноИначе никак.
Наткнулся на мануал одинТебе по рукам настучать надо. Попадался мне один проект с таким хаком, в виде исходников. Привести его в рабочий вид стоило немало седых волос. Т.к. чтобы зарегить компонент нужен бинарник, а чтобы сбилдить бинарник нужно зарегистрировать компонент. Получается нарушение причинно следственной связи. Плюс ты заебёшься вносить какие-либо изменения в такой компонент. (например ты добавляешь новое свойство в компонент, ребилдишь проект. теперь тебе надо руками сериализованные объекты этого класса править, или пересоздавать их, иначе при запуске бинарника словишь краш) В общем ты не должен этого хотеть. СОВСЕМ. Зависимости в проекте должны быть в виде дерева, а не ёбанного клубка.
Тебе по рукам настучать надо. Попадался мне один проект с таким хаком, в виде исходников. Привести его в рабочий вид стоило немало седых волос. Т.к. чтобы зарегить компонент нужен бинарник, а чтобы сбилдить бинарник нужно зарегистрировать компонент. Получается нарушение причинно следственной связи. Плюс ты заебёшься вносить какие-либо изменения в такой компонент. (например ты добавляешь новое свойство в компонент, ребилдишь проект. теперь тебе надо руками сериализованные объекты этого класса править, или пересоздавать их, иначе при запуске бинарника словишь краш) В общем ты не должен этого хотеть. СОВСЕМ.Если я написал что делать каждый раз .dll с контролом грустно, то это не значит, что я его делаю млин.. Именно потому что это грустно=неправильно
Вот как баран из Toolbox вставляю в формочку тот контрол, от которого наследуется мой, а потом руками исправляю .designer.cs.
Если ты про хак - то это не ко мне, я не буду в этом участвовать.
Пиши подробнее блин + код запости.
Если хочешь хранить описание класса в том же проекте, то создавай его динамически. Нефиг его в десигн тайм конструктор пытаться пихать.
Если ты хочешь, чтобы он только в одном проекте отображался, а в других - нет, так пропиши пути в проект, а не в настройки IDE.
В студиях 2008 и 2010 одинаковая фигня - в проект C# Windows Forms добавляю UserControl, но он не появляется в toolbox'е, хотя должен:после добавления UserControl-а делаешь build и контрол появляется в toolbox-е
после добавления UserControl-а делаешь build и контрол появляется в toolbox-еВ том то и дело что в Visual Studio Express Edition появляется, а в Professional - нет!
У тебя какие версии ОС и студии, какие SP, какие языки, напиши пожалуйста.
У меня Win7 - русский, там студия 2010 английская. WinXP - русский - там студия 2008 английская.
А вот студия Express русская - там работает ) может какие то глюки с языками...
Если ты хочешь, чтобы он только в одном проекте отображался, а в других - нет, так пропиши пути в проект, а не в настройки IDE.Да, хочу в одном проекте.
А что куда прописывать? они там и так все в одной папке, и студия об этом знает, т.к. в ней все сделано с нуля.
Погугли у меня нет под рукой. Я на память не помню, да и с 2010 ни разу не работал.
там есть галочка, типа обновлять бар после каждого билда или нет. Ее рекомендуют отключать, поскольку с ней тормоза.
Очень странно что эффект обновления Toolbox'а не достигается закрытием/открытием студии с солюшеном (ну или просто солюшена)
обновлять бар после каждого билда или нет.без установленной галки когда обновляется?
Более того, если поставить галку, сребилдить, то появится.
Если потом галку снять и перезапустить студию, опять контролов в тулбоксе нет
Оставить комментарий
akkylla
В студиях 2008 и 2010 одинаковая фигня - в проект C# Windows Forms добавляю UserControl, но он не появляется в toolbox'е, хотя должен:http://msdn.microsoft.com/en-us/library/wz0k6226.aspx
Создавать каждый раз dll-проект с UserControl'ом, прикручивать его в toolbox как внешний че то грустно
Наткнулся на мануал один -там автор делает в экспресс выпуске. Поставил ExpressC# 2008 RUS, там контрол сразу появляется после первого build:
Помогите плз! Не удобно все время руками переписывать то что должен дизайнер генерить....