功能区TextChange事件

时间:2016-11-23 11:12:19

标签: vb.net ribbon

我正在创建Excel加载项。我在功能区上有一个名为关键字TextBox

我想根据关键字 TextBox中的值填充另一个名为类别TextBox

我希望每次用户在关键字 TextBox中键入新字符时都会刷新类别 TextBox

问题是Office功能区TextBox只有一个事件,即TextChanged。只有在TextBox失去焦点后才会触发此事件。

如何创建每次用户在TextBox中输入字符时都会被触发的事件?

这是TextChange事件的代码。它工作正常。我只需要在每次击键后运行它,而不仅仅是在文本框松开焦点之后:

Private Sub txtEnterKeyword_TextChanged(sender As Object, e As RibbonControlEventArgs) Handles txtEnterKeyword.TextChanged
    Dim myDict As New Dictionary(Of String, Long)
    Dim maxNr As Long, maxStr As String = ""
    Dim txt As String

    If GetRegistrySetting("OfferColumn") = 0 Then Exit Sub

    txt = Trim(LCase(sender.Text))
    If txt Is Nothing Then Exit Sub

    If dictHelper.ContainsKey(txt) Then
        myDict = dictHelper(txt)
        For Each key In myDict.Keys()
            If maxNr < myDict(key) Then
                maxNr = myDict(key)
                maxStr = key
            End If
        Next
    End If

    If maxStr <> "" Then
        cmbSelectColumn.Text = maxStr
    End If
End Sub

0 个答案:

没有答案