none
如何在一個內含relation的dataset中,去加上一個bindingNavigator移動控制項 RRS feed

  • 問題

  • 各位好

    小弟在VS2005中,看著範例去學習使用,可以成功建立兩個DataGridView中的Relation 。 另外也可以單獨的使BindingNavigator可以移動資料列。

    但是想要將這兩個功能結合在一起的時候,就是希望能按BindingNavigator就可以同時改變兩個DataGridview的資料列。

               SqlDataAdapter RelaDa = new SqlDataAdapter("select * from squeelab",conn );
               RelaDa.Fill(set, "squeelab");
               RelaDa = new SqlDataAdapter("select * from squeelabbody",conn );
               RelaDa .Fill (set ,"squeelabbody");         

                set.Relations.Add("Squee", set.Tables["SqueeLab"].Columns["LabNo"], set.Tables["SqueeLabBody"].Columns["LabNo"]);    
              
            
               this.bindingSource1.DataSource = set;
             
               this.bindingSource1.DataMember = "squeelab";

               c1FlexGrid2.SetDataBinding(set, "squeelab");
               c1FlexGrid4.SetDataBinding(set, "SqueeLab.Squee");
                        this.bindingNavigator1.BindingSource = bindingSource1;
               this.c1TextBox1.DataBindings.Add("Text", bindingSource1 , "labno");

    目前上面的bindingSource1的datasource和datamember的設定,無法使用DataGridView的資料同時移動,按c1FlexGrid2的資料列,可以同時改變c1FlexGrid4的資料。

     

    請有經驗的先進,可以指導一個方向,小弟因為是分別找到了移動資料,跟設定Relation兩個範例,一直無法合在一起,找了很多網上資料也查不到,謝謝

     

    2007年4月19日 上午 02:40

解答

  • 感謝您的回覆,小弟已經找到合用的範例了

    重點是在於副表需設定在DataRelation上

    2007年4月23日 上午 02:24

所有回覆

  • HI,

     

    VS 2005的DataSet中的DataTable如果存在關聯, 也就是DataRelation, 則將這兩個DataTable拿給DataGridView顯示後, 兩個DataGridView的資料是可以連動的, 也就是利用BindingNavigator瀏覽DataGridView顯示的記錄, 其相關的DataGridView顯示的記錄也可以跟著變化, 不需要寫程式控制, 應該是您看的範例沒有發揮VS2005的優點

     

    tihs

    2007年4月20日 上午 03:39
  • 感謝您的回覆,小弟已經找到合用的範例了

    重點是在於副表需設定在DataRelation上

    2007年4月23日 上午 02:24