我创建了一个带有查找文本功能的搜索表单,如何保存上一次搜索,以便在重新打开表单时创建“再次查找”按钮?
我的搜索代码是:
private void btnSearch_Click(object sender, EventArgs e)
{
if (cboField.SelectedIndex == -1)
{
return;
}
if (txtValue.TextLength == 0)
{
return;
}
string filter;
filter = "[" + cboField.Text + "]";
filter += lblOperation.Text + "'" + txtValue.Text + "'";
try
{
peopleBindingSource.Filter = filter;
}
catch (System.Data.EvaluateException)
{
MessageBox.Show("Please enter valid values in your text fields.");
}
}
答案 0 :(得分:2)
如果您希望在应用关闭时搜索仍然存在,请使用Settings类存储和检索用户过去的搜索(该问题中的其他答案讨论替代方案)
答案 1 :(得分:2)
当您的用户运行搜索时,我会将搜索条件复制到用户设置并保存。当用户打开表单时,检索此搜索条件并按照您的方式执行(显示,运行等)。
详细了解用户设置here。
答案 2 :(得分:0)
如果只需要记住上次搜索,我建议将此值写入应用程序配置文件。
将应用程序配置文件添加到C#项目
在此配置文件中添加密钥
该文件应如下所示:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="LastSearch" value="" />
</appSettings>
</configuration>
更新值 要覆盖此配置文件中的值,请参阅以下代码示例(遗憾的是,.NET中没有内置的修改方法) http://www.freevbcode.com/ShowCode.asp?ID=7718
答案 3 :(得分:-1)
您可以创建一个全局变量并将搜索存储在那里。