vb.net保存文本框值供以后使用
我在表单中使用vb.net保存文本框值供以后使用,vb.net,search,textbox,Vb.net,Search,Textbox,我在表单中使用文本框搜索pdf文件中的单词。我想把这些搜索词保存在某个地方供以后使用。因此,当用户在textbox中键入字母时,会出现一个包含先前搜索单词的下拉列表。类似于windows在资源管理器中的操作 有人举过一个例子吗?或者有人对此很熟悉吗?我发现了一些代码,我根据自己的需要进行了修改。当我单击提交按钮时,它会将ComboBox1的内容保存到文本文件中。当我加载表单时,文本文件被读取并加载到ComboBox1中,与以前使用的搜索一样 'now save the search wor
文本框
搜索pdf文件中的单词。我想把这些搜索词保存在某个地方供以后使用。因此,当用户在textbox
中键入字母时,会出现一个包含先前搜索单词的下拉列表。类似于windows在资源管理器中的操作
有人举过一个例子吗?或者有人对此很熟悉吗?我发现了一些代码,我根据自己的需要进行了修改。当我单击提交按钮时,它会将ComboBox1的内容保存到文本文件中。当我加载表单时,文本文件被读取并加载到ComboBox1中,与以前使用的搜索一样
'now save the search word to our textfile
PresetName = TextBoxFreeText.Text
If PresetName <> "" Then
TextBoxFreeText.Items.Add(PresetName)
Call SaveData(PresetName)
End If
保存ComboBox1内容的代码
Private Sub SaveData(ByVal PresetName As String)
Dim FileString As String = PresetName & ","
'Build File String
FileString &= TextBoxFreeText.Text & ","
listPreset.Add(FileString)
myWriter = New StreamWriter(FilePath)
For i = 0 To listPreset.Count - 1
myWriter.WriteLine(listPreset.Item(i))
Next
myWriter.Close()
End Sub
还有两件事我想改变。我将提出一个新问题
'now save the search word to our textfile
PresetName = TextBoxFreeText.Text
If PresetName <> "" Then
TextBoxFreeText.Items.Add(PresetName)
Call SaveData(PresetName)
End If
保存ComboBox1内容的代码
Private Sub SaveData(ByVal PresetName As String)
Dim FileString As String = PresetName & ","
'Build File String
FileString &= TextBoxFreeText.Text & ","
listPreset.Add(FileString)
myWriter = New StreamWriter(FilePath)
For i = 0 To listPreset.Count - 1
myWriter.WriteLine(listPreset.Item(i))
Next
myWriter.Close()
End Sub
还有两件事我想改变。我将提出一个新问题
可以在类型为属性数据源的应用程序设置条目中存储和检索搜索词列表 添加新条目
- 从项目菜单中选择
属性YourAppName
- 选择设置选项卡
- 在Name列中添加新条目,例如:SearchWords
- 从类型列中,选择System.Collections.Specialized.StringCollection
- 关闭对话框并保存
Load
事件中,假设您有一个名为txtSearch
的搜索TextBox
:
'+
导入系统
导入System.Collections.Specialized
Private Sub YourForm_Load(发送者作为对象,e作为事件参数)处理MyBase.Load
如果My.Settings.SearchWords是空的,那么
My.Settings.SearchWords=新建StringCollection
如果结束
Dim acc作为新的AutoCompleteTestringCollection
acc.AddRange(My.Settings.SearchWords.Cast(字符串的).ToArray())
txtSearch.AutoCompleteMode=AutoCompleteMode.Suggest
txtSearch.AutoCompleteSource=AutoCompleteSource.CustomSource
txtSearch.AutoCompleteCustomSource=acc
端接头
更新收藏
执行搜索时,您需要添加新词:
当您单击搜索按钮时。。。
私有子BTN搜索\单击(发件人作为对象,e作为事件参数)处理BTN搜索。单击
AddSearchWord()
端接头
'如果在按Enter键时调用搜索例程。。。
私有子txtSearch_KeyDown(发送方作为对象,e作为KeyEventArgs)处理txtSearch.KeyDown
如果e.KeyCode=Keys,则输入
AddSearchWord()
如果结束
端接头
'更新集合。。。
私有子AddSearchWord()
如果txtSearch.Text.Trim.Length=0,则返回
如果不是txtSearch.AutoCompleteCustomSource.Contains(txtSearch.Text),则
如果txtSearch.AutoCompleteCustomSource.Count>10,则
txtSearch.AutoCompleteCustomSource.RemoveAt(
txtSearch.AutoCompleteCustomSource.Count-1)
如果结束
txtSearch.AutoCompleteCustomSource.Insert(0,txtSearch.Text)
如果结束
端接头
保存收藏
关闭表单时更新SearchWord
字符串集合:
Private Sub YourForm\u FormClosing(发送者作为对象,e作为FormClosingEventArgs)处理MyBase.FormClosing
My.Settings.SearchWords=新建StringCollection
My.Settings.SearchWords.AddRange(txtSearch.AutoCompleteCustomSource.Cast(字符串的).ToArray)
My.Settings.Save()
端接头
演示
您可以在类型为属性数据源的应用程序设置条目中存储和检索搜索词列表 添加新条目
- 从项目菜单中选择
属性YourAppName
- 选择设置选项卡
- 在Name列中添加新条目,例如:SearchWords
- 从类型列中,选择System.Collections.Specialized.StringCollection
- 关闭对话框并保存
Load
事件中,假设您有一个名为txtSearch
的搜索TextBox
:
'+
导入系统
导入System.Collections.Specialized
Private Sub YourForm_Load(发送者作为对象,e作为事件参数)处理MyBase.Load
如果My.Settings.SearchWords是空的,那么
My.Settings.SearchWords=新建StringCollection
如果结束
Dim acc作为新的AutoCompleteTestringCollection
acc.AddRange(My.Settings.SearchWords.Cast(字符串的).ToArray())
txtSearch.AutoCompleteMode=AutoCompleteMode.Suggest
txtSearch.AutoCompleteSource=AutoCompleteSource.CustomSource
txtSearch.AutoCompleteCustomSource=acc
端接头
更新收藏
执行搜索时,您需要添加新词:
当您单击搜索按钮时。。。
私有子BTN搜索\单击(发件人作为对象,e作为事件参数)处理BTN搜索。单击
AddSearchWord()
端接头
'如果在按Enter键时调用搜索例程。。。
私有子txtSearch_KeyDown(发送方作为对象,e作为KeyEventArgs)处理txtSearch.KeyDown
如果e.KeyCode=Keys,则输入
AddSearchWord()
EN