2017/12/05(Tue) 23:27:50 編集(投稿者)
■No85923 (あ さん) に返信
> ■No85921 (魔界の仮面弁士 さん) に返信
>>■No85919 (あ さん) に返信
補足として申し上げます。
新しいform2からlist.add("")に書いてform1にコンボボックス表示させたいと思いついたのですが。
form1の
Imports System.Globalization
Public Class Form2
Private list As New List(Of String)()
Private Sub raion_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()
With Form1.ComboBox1
list.Add("あり")
list.Add("アメリカンドック")
'form1に表示させる
Form1.ComboBox1.DropDownStyle = ComboBoxStyle.DropDownList
Form1.ComboBox1.DataSource = list
end with
この場合は出来ます。
しかし、文字を検索すると消えてしまいました。
'form2
Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.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 = Form1.TextBox2.Text
Form1.ComboBox1.DataSource = list.Where(
Function(s)
Return 0 = ci.Compare(Strings.Left(s, txt.Length), txt, opt)
End Function).ToArray()
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 = a00.TextBox1.Text
ComboBox1.DataSource = list.Where(
Function(s)
Return 0 = ci.Compare(Strings.Left(s, txt.Length), txt, opt)
End Function).ToArray()
End Sub
試したんですがform1で検索すると消えてしまいました。
何卒宜しくお願い致します。