2012-07-15 3 views
1

에 DataGridView에 바인딩 때 다음과 같은 작은 아이 형태가 있습니다오류 발생 BindingNavigator

enter image description here

는 지금까지 다음 사항을 가지고 내 데이터베이스 테이블에 컨트롤을 연결하기를.

비슷한 방법으로 탐색기에 DataGridview를 연결하려고 시도했습니다. 텍스트 상자를 탐색기에 연결할 것입니다.이 컨트롤을 결합하는 올바른 구문은 무엇입니까?

public SqlCeConnection conn = new SqlCeConnection(ConfigurationManager.ConnectionStrings["WindFormAppRevisionHelper.Properties.Settings.DefinitionsDBConnectionString"].ConnectionString); 
    BindingSource rawtableBindingSource = new BindingSource(); 


    public uxFormDatabase() 
    { 
     InitializeComponent(); 
     fillTheDGVusingAdapter(); 
    } 

    public void fillTheDGVusingAdapter() 
    { 

     SqlCeDataAdapter da = new SqlCeDataAdapter(new SqlCeCommand("Select * From tb_Definitions", conn)); 
     DataSet ds = new DataSet("DGVdata"); 
     ds.Tables.Add("rawTable"); 
     da.Fill(ds.Tables["rawTable"]); 

     uxDGVtable.DataSource = ds.Tables["rawTable"]; 

     rawtableBindingSource.DataSource = ds.Tables["rawTable"]; 
     uxrawdataBindingNavigator.BindingSource = this.rawtableBindingSource; 

     //PROBLEM WITH THE FOLLOWING LINE 
     uxDGVtable.DataSource = DataBindings.Add(new Binding("Text", uxrawdataBindingNavigator, "Item_Id", true)); 

    } 

답변

2

그것은 3 개 라인 이전, 이미 uxDGVtable 컨트롤의 데이터 소스를 설정하기 때문에 당신이 무엇을하고 있는지 조금 불분명하다. 이 후 변경이를 통해 만든 즉 네비게이터하고있는 DataGridView에 어떤 버튼이 모든 데이터베이스 테이블 개까지 연결된다는 것을 의미합니다 -

// uxDGVtable.DataSource = ds.Tables["rawTable"]; 
uxDGVtable.DataSource = this.rawtableBindingSource; 
+0

확인 :

은 네비게이터가 사용하는 동일한 BindingSource에를 사용해보십시오 컨트롤이 데이터베이스에 저장됩니까? – whytheq

+0

@whytheq 예, 그리드에 동일한 바인딩 소스를 사용하면 탐색기가이를 함께 연결합니다. 그래도 자동으로 데이터를 저장하지는 않으며 올바른 업데이트 호출을 통해 스스로해야합니다. – LarsTech

+0

롤 ... 그냥 귀하의 의견을 읽고 더 많은 문제를 치는 전에 저장 실험! (이 winForm의 첫 번째 반복 작업은 괜찮 았지만 데이터 세트를 만들고 마법사를 사용하지 않고이 새로운 버전을 코딩하려고 노력 중입니다 ... 나와 같은 초보자에게는 꽤 힘들지만 잘하면 가치가 있습니다.) 나는 새로운 질문으로 저축 문제를 게시 할 것이다 – whytheq