2016-06-01 16 views
1

私のコンボボックスに残っている提案を追加する方法を探しています。私が提案するアペンド機能で入力を開始するときコンボボックスで追加カウントを提案する

私の例では、私は、このリストは、7つの項目

enter image description here

のリストを絞り込んますしています。しかし、私はこれらの残りの追加を数える可能性を見ません。私の主な目的は何ですか

enter image description here

は、私がかつて私は1つだけが残って追加することをお勧めしていアクションを行うことです。
しかし、私は選択されたインデックスのみをチェックすることができます。この場合は常に-1です。または、コンボボックスカウントはまだ7です。残りのカウントをカウントする方法は追加されません。

答えて

0

あなたのコンボボックスのリスト項目が文字列型の場合、このコードはそれを行います。まず、コンボボックスの項目を含む文字列のリストを作成する必要があります。次に、コンボボックスのkeyupイベントで、リストをフィルタリングしてカウントするために使用するsearchtextを作成する必要があります。 (私もちょうどその値を見るために検索テキストを示している)以下のコードを参照してください。

Dim lst As New List(Of String) 
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load 
     For Each it In ComboBox1.Items 
      lst.Add(it) 
     Next 
    End Sub 

    Private Sub ComboBox1_KeyUp(sender As Object, e As KeyEventArgs) Handles ComboBox1.KeyUp 
     Dim seltext = ComboBox1.SelectedText 
     Dim searchtext = "" 
     If seltext <> "" Then 
      searchtext = ComboBox1.Text.ToLower.Replace(seltext, "") 
     Else 
      searchtext = ComboBox1.Text.ToLower 
     End If 
     Label1.Text = lst.Where(Function(d) d.ToLower.StartsWith(searchtext)).Count & " - " & searchtext 
    End Sub 

あなたのコンボボックスのリスト項目は、あなたがのListItemのテキストフィールドでリストを移入する必要があり、その後別のオブジェクト型である場合。

0

私はリストを使用しなかったか、選択されたテキストを長さゼロの文字列で置き換えなかった以外は、Shurkiと同じ基本的な考え方を持っていました。

私はコンボボックスのTextプロパティから部分文字列を取得するためにコンボボックスのselectionStartプロパティを使用します。..

Public Class Form1 
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles Me.Load 
    ComboBox1.Items.Add("Candy") 
    ComboBox1.Items.Add("Car") 
    ComboBox1.Items.Add("Crush") 
    ComboBox1.Items.Add("Canned") 
    ComboBox1.Items.Add("Can") 
End Sub 

Private Sub ComboBox1_KeyUp(sender As Object, e As KeyEventArgs) Handles ComboBox1.KeyUp 
    Dim query As IEnumerable(Of Object) = 
    From item As Object In ComboBox1.Items 
    Where item.ToString().ToUpper().StartsWith(ComboBox1.Text.Substring(0, ComboBox1.SelectionStart).ToUpper()) 
    Select item 
    Debug.WriteLine("Number of items: " & query.Count()) 
End Sub 
End Class 
関連する問題