2

テキスト検索機能を使用して検索フォームを作成しました。最後の検索を保存して、フォームを再度開いたときに [再検索] ボタンを作成するにはどうすればよいですか?

検索用の私のコードは次のとおりです。

    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.");
        }
    }
4

3 に答える 3

2

アプリを閉じたときに検索を継続する場合は、 Settingsクラスを使用してユーザーの過去の検索を保存および取得します(その質問の他の回答では代替案について説明しています)

于 2011-11-16T17:03:24.037 に答える
2

ユーザーが検索を実行すると、検索条件をユーザー設定にコピーして保存します。ユーザーがフォームを開いたときに、この検索条件を取得し、目的の操作 (表示、実行など) を行います。

ユーザー設定の詳細については、こちらをご覧ください。

于 2011-11-16T17:05:03.797 に答える
0

最後の検索を覚えておくだけでよい場合は、この値をアプリケーション構成ファイルに書き込むことをお勧めします。

C# プロジェクトにアプリケーション構成ファイルを追加するには

  • [プロジェクト] メニューの [新しい項目の追加] をクリックします。
  • [新しい項目の追加] ダイアログ ボックスが表示されます。
  • アプリケーション構成ファイル テンプレートを選択し、[追加] をクリックします。
  • app.config という名前のファイルがプロジェクトに追加されます。

この構成ファイルにキーを追加します

ファイルは次のようになります。

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
   <appSettings>
      <add key="LastSearch" value="" />
   </appSettings>
</configuration>

値の更新 この構成ファイルの値を上書きするには、次のコード サンプルを参照してください (残念ながら、.NET には組み込みの変更メソッドはありません) http://www.freevbcode.com/ShowCode.asp?ID=7718

于 2011-11-16T20:08:43.560 に答える