|
||
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
17.04.2010, 15:26 | #1 | |
Поддержка WPF в ObjectARX.NET 2010?
это только кличка
Москва
Регистрация: 22.10.2006
Сообщений: 252
|
||
Просмотров: 5147
|
|
||||
это только кличка Регистрация: 22.10.2006
Москва
Сообщений: 252
|
Цитата:
Потому, собственно, вопрос и возник.
__________________
...в шее моей жилы железные, и лоб мой - медный... |
|||
|
||||
А вот это, батенька, ложное утверждение... Почитайте внимательней о технологии WPF (например Макконнелла - он в самом начале книги чётко показывает, что WPF - это совсем не Win32 API и объясняет различия).
|
||||
|
||||
это только кличка Регистрация: 22.10.2006
Москва
Сообщений: 252
|
Трудов Макконелла по WPF не нашёл.
Зато нашел в книге Matthew MacDonald'a "WPF in C#2008" (стр. 2): Цитата:
"Один компонент который все ещё остается в силе (определенная его часть) - это User32 (dll-библиотека - уточнение моё). И это по тому, что WPF полагается на неё при маршрутизации и обработке пользовательского ввода и при определении того, какое приложение какой частью пощади экрана владеет...." Т.е. по-прежнему в силе "старый фундамент" - очереди потоков, циклы выборки сообщений из этих очередей, отношения владения между окнами... И именно это я имел в виду, говоря об отсутствии разницы между Windows Forms и WPF. Только я и без Макдональда об этом догадывался, потому как в OS Windows по другому и быть не может.
__________________
...в шее моей жилы железные, и лоб мой - медный... Последний раз редактировалось Pastor, 20.04.2010 в 12:50. |
|||
|
|||||
Цитата:
Об этой книге я и говорил. Цитата:
Цитата:
Цитата:
|
|||||
|
||||
Механизмы отображения на экране визуального контента иные чему у WinForms (насколько я понял из прочитанного ранее в книгах). Спорить не буду, поскольку сам "чайник" в WPF, просто повторюсь, что у меня проблем не возникало. Я, не понимаю почему вообще должны возникать проблемы, ведь обе технологии используют однопоточность ([STAThread]), и модальные окна блокируя поток (до закрытия окна) возвращают результаты обратно, т.е. вроде бы проблем с синхронизацией возникнуть не должно вообще (во всяком случае мне так видится). Почему "lead to unexpected behavior" - не понимаю, хотя наверняка что-то происходит, раз пишут такое, вот только распространяется ли это на WPF - под вопросом... (((
|
||||
|
||||
Цитата:
P.S.: Зато нашел другое обсуждение этого вопроса: http://through-the-interface.typepad...ght-way-t.html |
||||
|
||||
Цитата:
В таком случае вообще сей момент не является ли попросту задокументированным багом? |
||||
|
||||
Ко всему, что работает на платформе Win32/Win64. Никакой разницы нет, т.к. с точки зрения ядра системы ни WinForms, ни WPF ничего нового не внесли - они лишь "оболочки" над низкоуровневым оконным интерфейсом.
Причем здесь баг? Обычное ограничение. |
||||
|
||||
Я посмотрел ваш линк. Хочу понять насколько существенны те пункты, которые там перечислены:
1. Dialogs will automatically pick up the icon of the host product Отображённое через метод ShowDialog окно имеет иконку автокада (во всяком случае в WPF) и не вижу в этом криминала. Но при желании можно назначить любую: Код:
2. Dialog size and position will be persisted automatically Настройку размеров и позиции модального окна можно выполнить без проблем, задав предварительно этому окну свойства Width, Height и WindowStartupLocation (установив последнее в значение WindowStartupLocation.CenterScreen - самый часто встречающийся вариант, поскольку AutoCAD развёрнут, как правило, на весь экран) - тоже ничего криминального не вижу. Но при желании можно чётко разместить диалоговое окно относительно основного окна приложения или же относительно окна документа, воспользовавшись для этого информацией, полученной из основного окна приложения: Autodesk.AutoCAD.ApplicationServices.Application.MainWindow.Location; Autodesk.AutoCAD.ApplicationServices.Application.MainWindow.Size; или же из окна документа: Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.Window.Location; Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.Window.Size; 3. Other floating AutoCAD windows (e.g. the Properties palette) will be disabled, as needed Они и так недоступны в режиме модального окна, отображённого через через метод ShowDialog (я проверял). 4. The DIASTAT system variable will be set properly with the exit status of the dialog Для того, чтобы получить информацию о том, с помощью какой клавиши было закрыто модальное окно, совершенно не обязательно использовать системную переменную DIASTAT. Т.о. если это все аргументы, то у меня складывается впечатление, что проблема по большому счёту надуманная, ибо указанные пункты не существенны. Поправьте меня, если я не прав. Цитата:
Последний раз редактировалось hwd, 20.04.2010 в 16:35. |
||||
|
||||
это только кличка Регистрация: 22.10.2006
Москва
Сообщений: 252
|
Цитата:
__________________
...в шее моей жилы железные, и лоб мой - медный... |
|||
|
||||
Цитата:
и всё работает без проблем. из двух последних методов, отображающих окно, следует оставить только один, а второй - закомментировать, т.к. при закрытии окна вызывается Dispose() и второй раз оно уже не откроется. Я не комментировал на скрине, дабы показать, что ошибок нет и присутствует 2 варианта. Последний раз редактировалось Кулик Алексей aka kpblc, 20.04.2010 в 22:17. |
||||
|
||||
Проверяйте сначала и уже потом "раздражайтесь"... (рекомендация на будущее).
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
|
||||
это только кличка Регистрация: 22.10.2006
Москва
Сообщений: 252
|
Ну, раз в справке нет, то значит официально не поддерживается.
На этом и порешим. p.s. Чтобы давать рекомендации, надо сначала стать человеком авторитетным и набраться возрасту, хотя бы годков сорок.
__________________
...в шее моей жилы железные, и лоб мой - медный... |
|||
|
||||
Цитата:
Ну вот и договорились - более в ваши топики не суюсь.
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
|
||||
Это значит лишь, что не успели (забыли - можно выбрать по вкусу) задокументировать. Пример тому документация ObjectARX SDK 2011. Вот если бы на протежении хотябы 5 версий не было описания каких-то возможностей (как было с рядом функций ObjectARX), вот тогда можно было бы сказать "Недокументировано, официально не поддерживается".
Offtop: Pastor, hwd - Ей Богу смешно смотреть как два взрослых мужика играются в песочнице. Нас (т.е. тех, кто отвечает на вопросы по ObjectARX и .NET) тут всего ничего. А вы еще и соритесь. |
||||
|
Опции темы | Поиск в этой теме |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Не могу переустановить Autocad 2010 | Ignatych | AutoCAD | 51 | 27.08.2021 18:24 |
Проблемы совместимости при чтении чертежей в AutoCAD 2004 сделанных в AutoCAD 2010 (сохраненных в формате AutoCAD 2000) | GL0Ri0US | AutoCAD | 12 | 13.03.2010 22:48 |
AutoCAD 2010 ИЛИ AutoCAD Architecture 2010 | Bat | AutoCAD | 2 | 25.11.2009 07:17 |
Серьезная проблема с Autocad Architecture 2010 | moroz_nastya | Вертикальные решения на базе AutoCAD | 12 | 20.10.2009 20:27 |
автокад 2010 MEP,kak риббонс перевезти в классические тоолбарс | GECK | Вертикальные решения на базе AutoCAD | 2 | 28.04.2009 19:02 |