powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Как выделить найденную строку?
11 сообщений из 11, страница 1 из 1
Как выделить найденную строку?
    #32821836
.DLL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет!
Я как-то спрашивал про поиск записи в таблице datatable, теперь немного похожая проблема, но только нужно найти и выделить (спозиционировать) найденную строку, никак не получается сделать это. Может подскажите?
Спасибо!
...
Рейтинг: 0 / 0
Как выделить найденную строку?
    #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
Как выделить найденную строку?
    #32822476
.DLL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо, попробую разобраться.
...
Рейтинг: 0 / 0
Как выделить найденную строку?
    #32822642
.DLL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что-то не получается...
А есть какой-то другой способ, может общий для datatable, ну вроде того, что я там (в Datatable) выделяю строку (так бывает если несколько контролов основано на одном источнике), и она становится активной в таблице ну или другом контроле, например списке?
Может корявый вопрос получается? :/
...
Рейтинг: 0 / 0
Как выделить найденную строку?
    #32822865
.DLL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Допустим строку я нашел, а как ее выделить?
Ds.vw_Declare.Rows.Find(1292)
...
Рейтинг: 0 / 0
Как выделить найденную строку?
    #32823498
.DLL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Странно, что никто не может подсказать.
Мне кажется возможность контекстного поиска использыется достаточно часто в программировании с таблицами. :/
...
Рейтинг: 0 / 0
Как выделить найденную строку?
    #32823656
Фотография Worobjoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
Me.Grid1.CurrentRowIndex = i
...
Рейтинг: 0 / 0
Как выделить найденную строку?
    #32823678
Фотография Worobjoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
'Выделить нужную строку
Me.Grid1.Select(i)
'Найти Row по первичному ключу
Dim row1 As DataRow
row1 = Me.DataSet1.ИмяТаблицы.FindByПервичныйКлюч(Значение)
...
Рейтинг: 0 / 0
Как выделить найденную строку?
    #32823806
.DLL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Worobjoff
Код: plaintext
1.
2.
3.
4.
'Выделить нужную строку
Me.Grid1.Select(i)
'Найти Row по первичному ключу
Dim row1 As DataRow
row1 = Me.DataSet1.ИмяТаблицы.FindByПервичныйКлюч(Значение)


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


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