Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Как выделить найденную строку? / 11 сообщений из 11, страница 1 из 1
09.12.2004, 18:56
    #32821836
.DLL
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как выделить найденную строку?
Всем привет!
Я как-то спрашивал про поиск записи в таблице datatable, теперь немного похожая проблема, но только нужно найти и выделить (спозиционировать) найденную строку, никак не получается сделать это. Может подскажите?
Спасибо!
...
Рейтинг: 0 / 0
10.12.2004, 10:37
    #32822456
Лиман Артём
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как выделить найденную строку?
кидаю куски из своих старых кодов, надеюсь разберешся
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
class MyGrid
inherits DataGrid
.....

'выделение строки по заданому DataRow
    Public Sub SelectRow(ByVal Row As DataRow)
        If Row Is Nothing Then Exit Sub

        Try
            Dim dt As DataTable = CType(Me.DataSource, DataTable)
            If dt Is Nothing Then Exit Sub
            Dim dv As DataView = Me.GetView '  New DataView(dt)
            Dim tmp() As DataRow
            'создаем временный масив строк для поиска в нем даной
            tmp = dt.Select(dv.RowFilter, dv.Sort)
            'находим индекс строки
            Dim ind% = tmp.IndexOf(tmp, Row)
            If ind <> - 1  Then
                If Me.CurrentRowIndex <> - 1  Then
                    'снимаем выделение с текущей сторки
                    UnSelect(CurrentRowIndex)
                End If
                'если строка найдена выделяем ее
                Me.Select(ind)
                CurrentRowIndex = ind
            End If
        Catch ex As Exception
            Utils.DumpError(ex)
        End Try

    End Sub
end class

...
Рейтинг: 0 / 0
10.12.2004, 10:44
    #32822476
.DLL
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как выделить найденную строку?
Спасибо, попробую разобраться.
...
Рейтинг: 0 / 0
10.12.2004, 11:39
    #32822642
.DLL
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как выделить найденную строку?
Что-то не получается...
А есть какой-то другой способ, может общий для datatable, ну вроде того, что я там (в Datatable) выделяю строку (так бывает если несколько контролов основано на одном источнике), и она становится активной в таблице ну или другом контроле, например списке?
Может корявый вопрос получается? :/
...
Рейтинг: 0 / 0
10.12.2004, 12:24
    #32822865
.DLL
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как выделить найденную строку?
Допустим строку я нашел, а как ее выделить?
Ds.vw_Declare.Rows.Find(1292)
...
Рейтинг: 0 / 0
10.12.2004, 15:27
    #32823498
.DLL
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как выделить найденную строку?
Странно, что никто не может подсказать.
Мне кажется возможность контекстного поиска использыется достаточно часто в программировании с таблицами. :/
...
Рейтинг: 0 / 0
10.12.2004, 16:14
    #32823656
Worobjoff
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как выделить найденную строку?
Код: plaintext
Me.Grid1.CurrentRowIndex = i
...
Рейтинг: 0 / 0
10.12.2004, 16:19
    #32823678
Worobjoff
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как выделить найденную строку?
Код: plaintext
1.
2.
3.
4.
'Выделить нужную строку
Me.Grid1.Select(i)
'Найти Row по первичному ключу
Dim row1 As DataRow
row1 = Me.DataSet1.ИмяТаблицы.FindByПервичныйКлюч(Значение)
...
Рейтинг: 0 / 0
10.12.2004, 16:55
    #32823806
.DLL
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как выделить найденную строку?
Worobjoff
Код: plaintext
1.
2.
3.
4.
'Выделить нужную строку
Me.Grid1.Select(i)
'Найти Row по первичному ключу
Dim row1 As DataRow
row1 = Me.DataSet1.ИмяТаблицы.FindByПервичныйКлюч(Значение)


Строка то находится, но не выделяется :(
...
Рейтинг: 0 / 0
10.12.2004, 17:22
    #32823898
Worobjoff
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как выделить найденную строку?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Private Sub btnFind_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnFind.Click
	'Поиск строки по первичному ключу "КодР". 
	'Me.NumericUpDown1 - для ввода кода искомой строки
	Dim row1 As DataRow, i, k As Integer
	k = Me.NumericUpDown1.Value
	Try
		For i =  0  To Me.DataSet11.ДвРег.Rows.Count -  1 
			If Me.DataSet11.ДвРег.Rows(i)("КодР") = k Then
				Me.Grid1.Select(k)
				Me.Grid1.CurrentRowIndex = k
				Exit For
			End If
		Next
	Catch ex As Exception
		MsgBox("Not found")
	End Try
End Sub
...
Рейтинг: 0 / 0
10.12.2004, 17:28
    #32823918
.DLL
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как выделить найденную строку?
Все, свасибо, вроде придумал сам:
Dim i%
For i = 0 To Form_1.GridView1.RowCount
If Form_1.DsDeclare1.vw_DeclareNET.Item(i).Код = 130 Then
Form_1.BindingContext(Form_1.grdTable.DataSource, Form_1.grdTable.DataMember).Position = i
Exit For
End If
Next

Переместится на строку, где код записи 130 например
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Как выделить найденную строку? / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]