asp.net 基于输入和输出变量的VB.Net集合搜索

gudnpqoy  于 2023-10-21  发布在  .NET
关注(0)|答案(1)|浏览(178)

我有一个场景,用户可以选择一个列表来显示一些信息。他们还可以使用编辑器字段手动搜索信息。我目前正在从列表中提取一个值作为变量。我需要先检查编辑器字段是否为空,如果为空,则将编辑器字段设置为与来自xsd的变量相同的值。然后,如果用户在编辑器字段中输入不同的值,则它将显示该信息。最后一种情况是,如果用户在编辑器字段中手动键入了一个数字,但随后希望从选项卡中选择不同的选项,则将编辑器字段设置为从选项卡中选择的新值。到目前为止,我有下面的例子:

If String.IsNullOrEmpty(searchField) Then
    searchField = Codevaluefromdopdown
End If

这涵盖了前两个场景,如果其为null,则将编辑器字段值设置为与NULL相同的值。它还涵盖了如果用户手动输入一个值,然后在编辑器字段中使用该值。
我在纠结最后一部分:

If dropdown value has changed Then
    searchfield = dropdown value
End If

每次我在编辑器字段中输入一个值,然后尝试去更改编辑器值时,它都会使用编辑器值而不是编辑器值进行搜索。
在这方面的任何帮助将是伟大的。谢谢你,谢谢

2fjabf4q

2fjabf4q1#

该代理应该具有keydown和validated事件,因此根据代理类型有两种解决方案。

Private Sub CboDropdown_KeyDown(sender As Object, e As KeyEventArgs)  Handles CboDropdown.KeyDown
        If e.KeyValue=Keys.Tab OrElse e.KeyValue=Keys.Enter Then
            If Not String.IsNullOrEmpty(CboDropdown.Text) Then
                searchfield = dropdown.text
            End If
        end if

    End Sub

'If the user cannot type into the dropdown, then look at the validated event ...

    Private Sub Dropdown_Validated(sender As Object, e As EventArgs) Handles Dropdown.Validated
        If Not String.IsNullOrEmpty(CboDropdown.Text) Then
            searchvalue = CboDropdown.Text
        End If
    End Sub
'''

相关问题