DOBON.NETプログラミング道掲示板
(現在 過去ログ3 を表示中)

[ 最新記事及び返信フォームをトピックトップへ ]

■34125 / inTopicNo.1)  DataGridViewで検索をかける方法
  
□投稿者/ 武蔵 一般人(4回)-(2019/02/06(Wed) 17:27:46)
  • アイコン環境/言語:[Win 7, VS2015, C# .NET 4.6] 
    分類:[.NET] 

    下記のサイトを参考に型付DataSetとTableAdapterを作りました。
    http://okwakatta.net/code/ado10.html

    そして、TableAdapterを使ってWinFormのDataGridView上にデータを表示することができました。

    using dta = Test.HPDataSetTableAdapters;

    public partial class Form1 : Form
    {
    private void button2_Click(object sender, EventArgs e)
    {
    using (dta.breadTableAdapter ta = new dta.breadTableAdapter())
    {
    HPDataSet ds = new HPDataSet();

    // データを抽出します。
    ta.Fill(ds.bread);
    this.DataGridView1.DataSource = this.ds.bread;
    }
    }
    }

    やりたい事は、Formにはtextboxが一つあります。このtextboxに入力された値で絞り込み検索をかけたいです。
    例えば、上記のサイトデータを使うと、

    select id,name,price from bread where price = テキストボックスの値;

    で絞り込んで、その結果をDataGridViewに表示したいです。
    既にDataSet上にデータがあるので、再度データベースに問合せをしてデータ取得してくるのは違うような気がします。

    どのように絞り込みをかけたらよいか教えてください!宜しくおねがいします。
引用返信 削除キー/
■34126 / inTopicNo.2)  Re[1]: DataGridViewで検索をかける方法
□投稿者/ Hongliang 大御所(553回)-(2019/02/06(Wed) 20:34:42)
  • アイコンDataSourceに(型付)DataTableを設定しているのであれば、DataGridViewはそのDataTableのDefaultViewであるDataViewを使って入出力するデータを管理します。
    DataViewにはRowFilterというプロパティがあり、SQLのWHERE句に似た書式でフィルタリングを設定することができます。
    https://docs.microsoft.com/ja-jp/dotnet/api/system.data.dataview.rowfilter

    // こんな感じになります
    this.ds.bread.DefaultView.RowFilter = String.Format("price = {0}", this.TextBox1.Text);
引用返信 削除キー/
■34127 / inTopicNo.3)  Re[2]: DataGridViewで検索をかける方法
□投稿者/ 武蔵 一般人(5回)-(2019/02/07(Thu) 09:47:24)
  • アイコンthis.ds.bread.DefaultView.RowFilter = String.Format("price = '{0}'", this.TextBox1.Text);

    でフィルタかけられました。ありがとうございます!
引用返信 削除キー/
■34128 / inTopicNo.4)  Re[3]: DataGridViewで検索をかける方法
□投稿者/ 武蔵 一般人(6回)-(2019/02/07(Thu) 09:47:44)
  • アイコンありがとうございます。
解決み!
引用返信 削除キー/



トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

Mode/  Pass/


- Child Tree -