2013-04-09 2 views
0

У меня проблема с Janus GridEX в vb6.janus gridex index after drag column

Я реализовал метод _keydown, чтобы выполнить поиск на db, поэтому, когда я нажимаю конкретную клавишу, я делаю поиск с изменениями в зависимости от выбранного столбца.

Для этого я получаю индекс столбца, в котором я использую метод .col файла gridex, все работает правильно, но если я перетащить столбец в gridex, изменив его позицию, изменится значение .col , но странно, что если я попытаюсь получить доступ к значению столбца с методом .value (intColumn), кажется, что индекс col не изменяется.

Например, если я делаю заданный поиск, когда я нахожусь в столбце номер 4, и я перетаскиваю столбец с индексом выше 4 в позиции с индексом меньше 4, я получаю следующую ситуацию, .col give me значение 5, но если я вызываю .value (5), я не получаю значение, которое раньше было в столбце 4, я получаю его, если я вызываю .value (4).

Поэтому я не понимаю, как изменяется индекс при перетаскивании столбца. У кого-нибудь есть идеи?

+0

Я решил! Я использовал объект JSColumn, в котором я храню столбец в той позиции, в которой я есть, затем я получаю индекс столбца, вызывая метод .index of JSColumn. 'Set tmpJsCol = jsgdLisMov.Columns.ItemByPosition (jsgdLisMov.col) intCol = tmpJsCol.Index' – user2189832

ответ

0

Я использую библиотеку Janus & Я всегда использую свойство Key вместо жестко закодированных номеров Col.

Вот один пример:

Decimal name = String.Empty; 

if (grdEx.CurrentColumn.Key == "Name") 
    name = Convert.ToString(grdEx.GetValue("Name")); 

Это всегда будет избежать ошибок, как в вашем случае.

Смежные вопросы