C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


■85975 / )  Re[7]: comboboxのselectindexについて
□投稿者/ あ (6回)-(2017/12/06(Wed) 18:54:49)
No85969 (furu さん) に返信
> ■No85965 (あ さん) に返信
>>2017/12/05(Tue) 23:27:50 編集(投稿者)
 
> TextBox1.TextChangedはForm1.TextBox2.Textで検索
> TextBox2.TextChangedはa00.TextBox1.Textで検索

'form1からform2に別form2でButton1をクリックするとform1にコンボボックスが表示される

Imports System.Globalization
Public Class Form1
    Private list As New List(Of String)()
    Dim a00 As New form2
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load


    End Sub

    Private Sub form2_Click(sender As Object, e As EventArgs) Handles form2.Click
'form2が開く
        a00.ShowDialog()
    End Sub
’form1で文字を検索可能にしたいんです。
Private Sub TextBox2_TextChanged(sender As Object, e As EventArgs) Handles TextBox2.TextChanged
        'テキストを書き換えるたびに、
        'リストの内容を先頭一致でフィルタリング
        Dim ci = New CultureInfo("ja-jp").CompareInfo
        Dim opt As CompareOptions
        opt = opt Or CompareOptions.IgnoreWidth   '全角と半角を区別しない
        opt = opt Or CompareOptions.IgnoreKanaType 'ひらがなとカタカナを区別しない
        opt = opt Or CompareOptions.IgnoreCase   '大文字と小文字を区別しない

        Dim txt As String = TextBox2.Text
        ComboBox1.DataSource = list.Where(
Function(s)
    Return 0 = ci.Compare(Strings.Left(s, txt.Length), txt, opt)
End Function).ToArray()
    End Sub

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Dim index As Integer
        index = ComboBox1.FindString(TextBox2.Text)
        ComboBox1.SelectedIndex = index

    End Sub
End Class
form1はここまで。

From2のコード

Imports System.Globalization
Public Class From2
    Private list As New List(Of String)()

    Private Sub form2_Load(sender As Object, e As EventArgs) Handles MyBase.Load

    End Sub

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Me.Close()
 list.Add("あ")
    list.Add("アイス")
    list.Add("アメリカンドック")
    list.Add("イカ")
    list.Add("いす")
    list.Add("いえ")

    'form1に表示
    ComboBox1.DropDownStyle = ComboBoxStyle.DropDownList
    ComboBox1.DataSource = list
  End Sub

end class

form2からButton1をクリックするとコンボボックスに表示されますが
文字を検索するとコンボボックスに表示から消えてしまいます。

どうしたらできますか?教えてくださいお願い申し上げます。

返信 編集キー/


管理者用

- Child Tree -