2016-09-10 7 views
0

新しいデータをretriveすると、彼らは以下のとおりです。
1 - すべての従業員
2 - Managerの
、3-従業員
これらの三つのカテゴリー選択した項目に関するデータを表示する必要がある項目の1つを選択するたびに、comboBoxの項目として設定されます。問題は、データグリッド表示が最初のデータをクリアして新しい項目を取得しないことです。
my codesすべての従業員を表示するためのコンストラクタです。クリアデータグリッドビューは、私は私の従業員ビュー形式の三つのカテゴリーがあり

da = new SqlDataAdapter("select empId as ID,empName ,empAdd,empBdate,empPhone1,empPhone2,empEmail,empSSN,empQualf from emp", cn); 
      da.Fill(dt); 
      empViewdgv.DataSource=dt; 

とコンボボックスアイテムの選択に従業員データをretrivingための他のコード

private void empViewcmbo_SelectedIndexChanged(object sender, EventArgs e) 
     { 
      if (empViewcmbo.SelectedIndex == 0) 
      { 
       empViewdgv.DataSource = null; 
       empViewdgv.Rows.Clear(); 
       da = new SqlDataAdapter("select empId as ID,empName ,empAdd,empBdate,empPhone1,empPhone2,empEmail,empSSN,empQualf from emp", cn); 
       da.Fill(dt); 
       empViewdgv.DataSource = dt; 
      } 
      else if (empViewcmbo.SelectedIndex == 1) 
      { 
       empViewdgv.DataSource = null; 
       empViewdgv.Rows.Clear(); 
       da = new SqlDataAdapter("select empId as ID,empName ,empAdd,empBdate,empPhone1,empPhone2,empEmail,empSSN,empQualf from emp where empPerm='Manager'", cn); 
       da.Fill(dt); 
       empViewdgv.DataSource = dt; 

      } 
      else if (empViewcmbo.SelectedIndex == 2) 
      { 
       empViewdgv.DataSource = null; 
       empViewdgv.Rows.Clear(); 
       da = new SqlDataAdapter("select empId as ID,empName ,empAdd,empBdate,empPhone1,empPhone2,empEmail,empSSN,empQualf from emp where empPerm='Employee'", cn); 
       da.Fill(dt); 
       empViewdgv.DataSource = dt; 
      } 
     } 

私はすべての従業員、それはすべての従業員が表示されるはずですが、私はマネージャーを選択した場合、それは最初のDataGridViewからのデータを空にデータを表示する必要がありますを選択すると、経営者ののように...

+0

のようにそれを充填する前のDataTableにClear()方法? – arman1991

+0

@ arman1991コンストラクタの前にそれを宣言して初期化しました –

+0

'dt'と' cn'変数は何を表現しているのですか?質問を編集して、ソリューション全体を表示してください。ありがとう。 – arman1991

答えて

1

コールあなたは `dt`変数を初期化します

da = new SqlDataAdapter("select empId as ID,......", cn); 
      dt.Clear(); 
      da.Fill(dt); 
      empViewdgv.DataSource=dt; 
+0

これは私の考えで動作します –

関連する問題