CftClub.ru
Клуб специалистов ЦФТ-Банк

Подкрашивание ячеек или колонок Grid'а
На страницу Пред.  1, 2
 
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Справочник PL/PLUS: Функции, примеры, приёмы
Предыдущая тема :: Следующая тема  
Автор Сообщение
Random
Эксперт


Вступление в Клуб: 27.06.2011
СообщениеСр Окт 05, 2011 06:17    Ответить с цитатой
Полезность: Нет оценки
san_light пишет:
ggrey пишет:
Посмотрел доку, да действительно есть такие события и действительно передаются в серверный валидатор. Не очень понимаю как вам помочь в этой ситуации, на мой взгляд остается только смотреть отладку.
спасибо, за попытку помочь.
что ж... жду еще советов


1. Ошибка в приведенном коде клиент-скрипта:
For i = 1 To ClientGrid.Rows
Цикл должен не доходить до последней строки!!!
правильно так: For i = 1 To ClientGrid.Rows -1

2. 1. Обработка всех событий должна осуществляться в клиент-скрипте.
2.2. Лично я делаю отдельный sub recolor и вызываю его где только можно по любым событиям (но только из клиент-скрипта), в результате которых изменяется положение/содержимое грида.
2.3. При этом в одну из колонок грида я помещаю посчитанное заранее число - значение цвета.
2.4. За расчет цвета, изменение содержания и т.п. грида - отвечает серверный валидатор, за обработку событий - клиент-скрипт.
2.5. Вызов валидатора только по Form1.ScriptServerValidate, после которого в обязательном порядке должен стоять вызов recolor.
2.6. Операция стоит в режиме: сначала обработка клиент-скрипта, потом передача события на сервер (блок контролов "проверки" на закладке "Дополнительные свойства" при редактировании операции).
2.7. Кроме того, вызов recolor помещается еще в функцию Main непосредственно перед присваиванием результата Main = true

Ну а уж после на каждый вызов можно повесить MsgBox и устранить излишние вызовы, без которых можно обойтись.

Вот тогда получите отличный юзабельный пользовательский интерфейс по фен-шую.
Показать сообщения:   
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Справочник PL/PLUS: Функции, примеры, приёмы Часовой пояс: GMT + 3
На страницу Пред.  1, 2
Страница 2 из 2

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Рейтинг@Mail.ru