2012-05-01 2 views
4
private void UserList_Load(object sender, EventArgs e) 
{ 
    // TODO: This line of code loads data into the 'workOrdersDataSet.users' table. You can move, or remove it, as needed. 
    this.usersTableAdapter.Fill(this.workOrdersDataSet.users); 
} 

다른 형식으로 변경 한 사항을 어떻게 다시로드합니까? (새로 고침 버튼을 사용하지 않고 자동으로 실행하는 것이 좋음)?TableAdapter를 사용하여 데이터 다시로드

내가 윈폼을 이용하고 있고 백엔드 데이터는 데이터 그리드에 디자이너를 사용하여 바인딩 액세스 2007

입니다

당신은 다른 함수에이 줄을 추가 할 수 있습니다
+0

농담 하시겠습니까? 코드가 데이터를 새로 고치고 어떻게해야하는지 묻습니다. –

+0

그게 신선하지 않습니다. 그게 내가 묻는 이유 –

+0

다른 폼에서 동일한 DataSet (인스턴스)을 참조하고 있습니까? –

답변

4

첫째, 별도의 함수에 Fill 이동합니다 :

public void LoadData() 
{ 
    this.usersTableAdapter.Fill(this.workOrdersDataSet.users); 
} 

을 그리고 당신이 당신의로드 이벤트를 수행 할 때, 당신은 함수를 호출합니다

private void UserList_Load(object sender, EventArgs e) 
{ 
    LoadData(); 
} 

하는 경우를 데이터에 대한 변경을 수행하는 또 다른 형식이 있습니다. 이와 비슷한 다른 이벤트에서이 함수를 호출 할 수 있습니다. 업데이트하기 위해 기본 양식에게 당신의 업데이트 프로세스를 완료 한 후, 다른 양식에 대한 귀하의 코드에서

private void OpenOtherForm() 
{ 
    DialogResult openForm = new OtherForm().ShowDialog(); 
    if(openForm == DialogResult.OK) 
     LoadData(); 
} 

코드의 라인을 포함 : 내 코드에서 DialogResult를 사용

private void PerformUpdate() 
{ 
    try 
    { 
     // your update code goes here 
     DialogResult = DialogResult.OK; // this is the line that tells your other form to refresh 
    } 
    catch (Exception ex) 
    { 
     DialogResult = DialogResult.Abort; 
    } 
} 

은 Using DialogResult 그러면 업데이트가 실제로 발생할 때만 데이터 새로 고침을 트리거하도록 기본 양식에 알립니다.

+0

귀하의 권장 사항을 수행했지만 DataGridView가 업데이트되지 않았습니다. 내 단추 코드가 private void buttonNewUser_Click (개체 발신자, EventArgs e)이라고 말합니다. { // NewUserForm nuf = new NewUserForm(); //nuf.Show(); OpenOtherForm(); } –

+0

다른 양식에 DialogResult를 사용하고 있습니까? – Taryn

+0

메신저 데이터 그리드를 새로 고치려면 테이블을 지우려고합니다. Im 데이터를로드 할 수있는 바인딩을 사용하여 sqldata 어댑터와 데이터 세트를 사용하지만 데이터 테이블에 새 데이터를 추가 할 때 데이터 테이블을 새로 추가하는 새 데이터가 표시되도록 새로 고침해야합니다. 명확한(); 그런 다음 DataAdapter.Fill (Dataset)을 DataGrid가 Visual Studio의 datamember 및 datasource 바인딩을 사용하지만 그 방법이 작동하지 않는 이유는 Oledb를 사용해야하지만 SQL Oledb를 사용하여야합니다. – shawn

1

public void MoveDataToUI() 
{ 
    this.usersTableAdapter.Fill(this.workOrdersDataSet.users); 
} 

말 누군가가 다른 형식으로 무언가를 바꿀 때 발생하는 짝수 핸들러에서이 함수를 호출 한 후.

Events tutorial

관련 문제