![]() |
Модераторы: gambit, Partizan |
![]() ![]() ![]() |
|
jonie |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 5 Всего: 118 |
возникла определенная потребность в пересчете данных на сложных формах. и очень бы не хотелось писать кучу кода вроде onValueChanged(...)
может быть есть какие-то типовые решения ? подумывал относительно написания extender-а, куда бы вводил формы пересчета+"биндинг" полей ввода на переменные, учавствующие в расчете.... но может есть какие более изящные решения ? -------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
mr.DUDA |
|
|||
![]() 3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 24 Всего: 232 |
Вариант - вынести весь код пересчёта в один общий метод и вызывать из обработчика form.Validating или типа того.
-------------------- ![]() |
|||
|
||||
jonie |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 5 Всего: 118 |
хм... это будет очень очень геморойно.
надобы че-нить типа maple встраивать) расчеты довольно сложны... -------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
mr.DUDA |
|
|||
![]() 3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 24 Всего: 232 |
Хмм... Ну тогда завести что-ли базовый класс для контролов типа текстбокса, в котором добавить поле с выражением, а парсить ручками и брать значения через рефлекшн (или через отдельный слой объектов, где будут только значения и связи).
-------------------- ![]() |
|||
|
||||
jonie |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 5 Всего: 118 |
а в чем проблемы будут в extender-ом (типа errorprovider-а).
ему даем field - наименование поля откуда брать данные, формула : как считать, псевдоним этого контрола в формулах. итого имеется : куча формул с привязкой на контролы(имя переменной) и значения этих контролов (значение переменной в формуле)... ну можно рассмотреть вариант с использованием Python, например, (iron python). там пропихивать в код питона можно ссылки(?) на .net типы.... тока я пока слабо представляю как ковырять это все в экстендере..... надо подробнее посмотреть как они реализуются). ну а там через этот extender расчет вести (он знает(?) о всех переменных в выражениях).... вопрос имеет ли extender поятие к чему он привязан... (надо читать как реализуются)... мнеб не хотелось наследоваться от объектов (много разнообразных элементов)... -------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
mr.DUDA |
|
|||
![]() 3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 24 Всего: 232 |
Вариант с экстендером интересный. Насколько я понимаю, некоторые компоненты (тултип например) так работают. Если получится, расскажи как всё делал.
![]() -------------------- ![]() |
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [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. |