我正在开发一个应用程序,它需要一个带有自动完成/建议(下拉菜单)的多个单词(用空格分隔符分隔)的文本框,如此处的标签文本框在StackOverflow中。例如,我开始输入'app',它应该显示建议列表中的所有单词,从应用开始,当我输入单词并按空格并开始输入新单词时,它应该显示所有建议那部分词。支持分隔符的.net自动填充文本框
有没有我可以看看的例子?
我正在开发一个应用程序,它需要一个带有自动完成/建议(下拉菜单)的多个单词(用空格分隔符分隔)的文本框,如此处的标签文本框在StackOverflow中。例如,我开始输入'app',它应该显示建议列表中的所有单词,从应用开始,当我输入单词并按空格并开始输入新单词时,它应该显示所有建议那部分词。支持分隔符的.net自动填充文本框
有没有我可以看看的例子?
我希望这会有所帮助..我使用的是开发人员快速工具,但可以使用常规.net组件。
Private Sub txtToEmail_EditValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtToEmail.EditValueChanged
Try
Dim Emails As New List(Of String)
Emails.Add("[email protected]")
Emails.Add("[email protected]")
Emails.Add("[email protected]")
Emails.Add("[email protected]")
Dim Txt = Trim(CStr(txtToEmail.EditValue))
Dim Suggestions As IEnumerable(Of String)
If Txt <> "" Then
If Txt.IndexOf(",") = -1 Then
Suggestions = From c In Emails Where c.StartsWith(Txt) Select c
Else
Dim lastIndex = Txt.LastIndexOf(",")
Dim lastWord = Trim(Txt.Substring(lastIndex + 1))
Suggestions = From c In Emails Where c.StartsWith(lastWord) Select c
End If
EmailList.Items.Clear()
For Each r In Suggestions
EmailList.Items.Add(r)
Next
End If
If EmailList.ItemCount > 0 Then
EmailList.Visible = True
End If
Catch ex As Exception
ShowErrorBox(ex)
End Try
End Sub
Private Sub EmailList_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EmailList.Click
Try
If EmailList.SelectedValue = Nothing OrElse EmailList.SelectedValue = "" Then Return
Dim Txt = CStr(txtToEmail.EditValue)
If Txt.IndexOf(",") = -1 Then
txtToEmail.EditValue = EmailList.SelectedValue
Else
Dim lastIndex = Txt.LastIndexOf(",")
txtToEmail.EditValue = Txt.Substring(0, lastIndex + 1) & EmailList.SelectedValue
End If
txtToEmail.Focus()
txtToEmail.SelectionStart = CStr(txtToEmail.EditValue).Length
EmailList.Visible = False
Catch ex As Exception
ShowErrorBox(ex)
End Try
End Sub
嘿谢谢。我修改了这个http://www.codeproject.com/KB/cs/AutoCompleteTextBox.aspx以逐字逐句的建议和更多的东西。这实际上是一个重写。我模仿了您在创建帖子时在本网站中获得的“标签”文本框的行为。 我试图将代码发回该网站,但他们没有那个设施。 – 2011-05-09 04:13:08
这是完整的代码http://www.codeproject.com/KB/cs/AutoCompleteTextBox.aspx?msg=3884491#xx3884491xx 请参阅评论部分以获取我的更新代码。 – 2011-05-09 04:23:52
感谢您的链接,我也在做这样的项目。 – Ezi 2011-05-09 13:52:40
仍在寻找那个?我张贴我的样本,如果它不够清楚只是评论,我会解释... – Ezi 2011-05-08 19:38:37