ver:vb2005
下記のコードにてButton1をクリックすると
102が選択状態になりますが、
102を指定して
102が選択状態になる方法があればご教授いただきたいです。
よろしくお願いします。
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
With ListView1
.Items(1).Selected = True
.Select()
End With
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
With ListView1
.View = View.Details
.Columns.Add("タイトル1", 100, HorizontalAlignment.Left)
.Columns.Add("タイトル2", 100, HorizontalAlignment.Left)
.Items.Add("101", 0)
.Items(0).SubItems.Add("aaaaa")
.Items.Add("102", 1)
.Items(1).SubItems.Add("bbbbb")
.Items.Add("103", 2)
.Items(2).SubItems.Add("ccccc")
End With
End Sub
End Class
他にもっといい方法もあるような気もしますが…
簡単にやろうと思ったらこんな感じでしょうか?
Dim strTarget As String = "102" '検索対象の値
With ListView
For i As Integer = 0 To .Items.Count - 1
If .Items(i).SubItems(0).Text = strTarget Then
.Items(i).Selected = True
.Select()
Exit For
End If
Next
End With
質問の意味がいまいち不明ですが、
IndexOfメソッドでよろしいかな?http://www.atmarkit.co.jp/fdotnet/dotnettips/128hasstring/hasstring.html
秋乃夜風さん、やじゅさんご教授ありがとうございました。
秋乃夜風さんのループ方法で対処させていただきました。
IndexOfメソッドでの文字列の検証方法も初めて知りました。
良かったです。