LOR
Дата: 11.05.2006 21:21:39
Прошу извинить за беспокойство.
Ситуация.
Есть первая форма Form1.
Есть вторая форма Form2.
Есть класс для работы с ListView ClassListView.
В классе ClassListView есть метод
Public Sub SelectListItem(ByRef lswListView As ListView, ByVal iValueColumn As Integer, ByVal iValueSelect As Integer),
который предназначен для выделения одной из строк в элементе управления ListView, в том, который передается в метод, как один из параметров.
На форме Form1 имеется элемент управления ListView - ListView1
Этому ListView1 соответствуют глобальная переменная GlobalListView1.
Одна из процедур Form2 вызывает метод SelectListItem, передавая ему как параметр глобальную переменную GlobalListView1 (то есть - ListView1 на Form1).
Вопрос.
Почему, благодаря вызываемому методу выделение нужной строки в ListView1 происходит, однако событие ListView1_SelectedIndexChanged нри этом не генерируется?
Спасибо.
LOR
Дата: 14.05.2006 11:34:35
Спасибо всем огромное!
Это отрывки кода.
Если этого недостаточно, готов привести весь код.
Module Global
..........
Public lswContactListView As ListView ' Объявление глобальной переменной
..........
End Module
Public Class ListViewWork 'Класс для работы с элементами ListView
......................................
Public Sub SelectListItem(ByRef lswListView As ListView, ByVal iValueColumn As Integer, ByVal iValueSelect As Integer) ' Процедура по выделению записи в ListView
Dim i As Integer
For i = 0 To lswListView.Items.Count - 1
If lswListView.Items(i).SubItems(iValueColumn).Text = iValueSelect Then
lswListView.Focus()
lswListView.Items(i).EnsureVisible()
lswListView.Items(i).Selected = True
End If
Next
End Sub
...........................
End class
' Вызов из Form2 (надо сказать, что само выделение записи происходит без проблем, просто событие SelectedIndexChanged для этого ListView на Form1 не генерируется.)
Private Sub btnCommCommit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCommCommit.Click
......................................
Me.Close() ' закрывается Form2
Dim lswListCP As New LVListView.ListViewWork()
lswListCP.SelectListItem(lswContactListView, 0, iCPID)
...............................
End sub