タイトル : Re^3: DataGridViewにカーソルを位置づけたい 投稿日 : 2008/08/22(Fri) 11:06 投稿者 : 魔界の仮面弁士
> そこでテキストボックスに"002"と入れられたらDataGridView上の"002"の行に > カーソルを位置づけたいということです。 これで良いのかな。 Public Class Form1 Private table1 As DataTable = CreateSample() Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) Handles MyBase.Load DataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect DataGridView1.MultiSelect = False DataGridView1.DataSource = table1 TextBox1.ImeMode = System.Windows.Forms.ImeMode.Disable ActiveControl = TextBox1 End Sub 'Private Sub TextBox1_Validated(ByVal sender As Object, ByVal e As EventArgs) Handles TextBox1.Validated Private Sub TextBox1_TextChanged(ByVal sender As Object, ByVal e As EventArgs) Handles TextBox1.TextChanged Dim findRow As DataRow = table1.Rows.Find(TextBox1.Text) If findRow Is Nothing Then '該当データなし: 選択解除 DataGridView1.ClearSelection() '該当データなし: 新規行に移動 'DataGridView1.CurrentCell = DataGridView1(0, DataGridView1.NewRowIndex) Return End If For Each dgvRow As DataGridViewRow In DataGridView1.Rows Dim row As DataRow = DirectCast(dgvRow.DataBoundItem, DataRowView).Row If row Is findRow Then dgvRow.Selected = True Return End If Next End Sub Friend Shared Function CreateSample() As DataTable Dim tbl As New DataTable("Table1") tbl.Columns.Add("社員コード") tbl.Columns.Add("社員氏名") tbl.Columns.Add("社員カナ") tbl.PrimaryKey = New DataColumn() {tbl.Columns("社員コード")} tbl.Rows.Add("001", "一郎", "イチロウ") tbl.Rows.Add("002", "二郎", "ジロウ") tbl.Rows.Add("003", "三郎", "サブロウ") tbl.AcceptChanges() Return tbl End Function End Class |