2

VB.NET Winforms アプリケーション... ユーザーがアプリケーションの検索ボックスに入力を開始すると、名前リストのドロップダウン ボックスに有効な結果が自動的に入力され、ドロップダウン値が true に設定されます... すべて正常に動作していますが、ユーザーは、名前リストから値を選択するか、esc キーを押す必要があります。これを行わないと、マウス カーソルが消えてしまい、元に戻るにはマウスをアプリケーションの外にずっと移動する必要があり、そうするだけです。アプリケーションの外で..以下は、私がこれに使用しているコードです。アプリケーションの他の場所でドロップダウン値を使用していることに注意してください。これらのインスタンスのいずれにも、これだけの問題はありません...任意のアイデア???

     Private Sub u_lastName_Box_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles u_lastName_Box.TextChanged
    u_nameLook_Box.Items.Clear()
    Dim TenList As New List(Of tenant)
    Dim x As List(Of tenant) = db.tenants.Where(Function(f) f.last_name.Contains(u_lastName_Box.Text) AndAlso f.propertyId = selectedProperty).OrderBy(Function(f) f.last_name).ToList
    For Each _ten In x
        Dim c = _ten
        u_nameLook_Box.Items.Add(Convert.ToString(c.Occupantid) + " -- " + c.last_name + "," + c.first_name)
    Next

    RemoveHandler u_nameLook_Box.DropDown, AddressOf u_nameLook_Box_DropDown
    u_nameLook_Box.DroppedDown = True
    AddHandler u_nameLook_Box.DropDown, AddressOf u_nameLook_Box_DropDown
End Sub
4

2 に答える 2

2

私は同じ問題に直面し、マウスのステータスを「更新」して解決しました。

ComboBoxClients.DroppedDown = True

Cursor.Current = Cursors.Default
于 2016-01-10T19:37:32.653 に答える
1

夜に考えた後、実際にこの問題を修正しました..ダイスなしでcursor.showを試しました...それについてもう少し考えて、cursor.showの前にカーソルスタイルを設定することにしました今すぐ動作します...私の更新されたコードは以下のとおりです...そもそもカーソルのスタイルと可視性がどのように、またはなぜ変更されたのかについていくつかの質問があります...

     Private Sub u_lastName_Box_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles u_lastName_Box.TextChanged
    u_nameLook_Box.Items.Clear()
    If Not u_lastName_Box.Text.Length < 1 Then
        Dim TenList As New List(Of tenant)
        Dim x As List(Of tenant) = db.tenants.Where(Function(f) f.last_name.Contains(u_lastName_Box.Text) AndAlso f.propertyId = selectedProperty).OrderBy(Function(f) f.last_name).ToList
        For Each _ten In x
            Dim c = _ten
            u_nameLook_Box.Items.Add(Convert.ToString(c.Occupantid) + " -- " + c.last_name + "," + c.first_name)
        Next


        RemoveHandler u_nameLook_Box.DropDown, AddressOf u_nameLook_Box_DropDown
        u_nameLook_Box.DroppedDown = True
        Me.Cursor = Cursors.Default
        Cursor.Show()
        AddHandler u_nameLook_Box.DropDown, AddressOf u_nameLook_Box_DropDown
    Else
        u_lookup_boxes_fill()
    End If

End Sub 
于 2012-06-08T11:15:10.390 に答える