2013-11-21 2 views
0

나는 VB.Net의 데이터 테이블이 버튼을 클릭 할 때 내가 새 행을 추가하려고 해요되는datanavigator 제어 기능을 모방하는 방법은 무엇입니까?

내 코드는 다음과 같습니다

public sub NewButtonClicked(Sender as Object, e as eventargs) handles ButtonNew.click 
    NewRow = MyDataTable.NewRow 
end sub 

public sub ConfirmButtonClicked(Sender as object, e as eventargs) handles Confirm.Click 
    for i=0 to MyTextBoxesList.count-1 
     NewRow(MyTextBoxesList(i).Name) = MyTextBoxesList(i).Text) 
    next 

    MyDataTable.Rows.Add(NewRow) 
end sub 

나는이게 할 문제, 때 ButtonNew를 클릭하면 새 행이 메모리에 만들어 지지만 양식에는 반영되지 않습니다. 즉, DataNavigator는 한 단계 이동하지 않고 바인딩 된 텍스트 상자를 지우고 DataNavigator 자체에서 새 행을 클릭하는 것과 달리 새 값을 입력합니다.

"수동"동작과 DataNavigator 동작을 비교하기 위해 비디오를 첨부했습니다.

Video Comparison

사람은 DataNavigator 새로운 버튼 동작을 모방하는 방법을 알고 있나요?

감사합니다.

답변

0

어려운 점은 MyDataTable.Rows.Add (NewRow)까지 데이터 테이블에 실제로 새 행을 추가하지 않았기 때문에 이동 가능한 위치가 없기 때문입니다. 탐색기가 새 행을 추가하고 마지막 위치로 이동합니다. 네비게이터가 그것을 처리하게하고 행을 확인하기위한 유인 수표를 가지고 있거나 아니면 삭제할 수 있습니까?

+0

답장을 보내 주셔서 감사합니다. 네비게이터가 테이블에 새 행을 추가 할 때, AllowDBNull 속성이 false 인 일부 열이 삽입 될 때 비어있는 경우에도 테이블에 추가 된 행을 허용하는 방법은 무엇입니까? –

+0

처음 네비게이터 AddNew 버튼을 클릭하면 새 데이터row가 생성되지만 새 행을 탐색 할 때까지 데이터 테이블에 추가되지 않습니다. – Lauren

관련 문제