2008-09-25 4 views
2

작업 요청을 추적하기 위해 VB 2008 프로그램을 만들었습니다. 그것은 모든 비스타 상자에서 완벽하게 작동하지만 새로운 기록을 추가 XP 환경에서 프로그램에 문제가 있습니다.DataGridview 및 AddNew 문제

기본적으로 2 개의 탭이 있습니다. 탭 1에는 제한된 정보와 캘린더가있는 DataGridview가 있습니다. 달력에서 날짜를 선택하면 datagridview의 정보가 변경됩니다. TAB 2는 텍스트/콤보 상자에서 해당 레코드에 대한 모든 사용 가능한 정보를 보유합니다. DataGridview와 텍스트 상자는 모두 동일한 바인딩 소스를 사용하므로 사용자가 DataGridview에서 행을 선택할 때마다 항상 동기화됩니다. NEW 단추를 선택하면 사용자가 데이터를 추가 할 수 있도록 모든 텍스트 상자가 비어있는 TAB 2가 나타납니다. TAB 1을 다시 보면 DataGridview에 빈 행이 추가 된 것을 볼 수 있습니다 (사용자는 AllowUserToAdd가 false로 설정되어 있으므로 DataGridview에 행을 직접 추가 할 수 없습니다). 앱이 VISTA에서 AddNew 레코드 상태를 유지하도록하면 SAVE 또는 CANCEL을 선택할 때까지 새 레코드가 유지됩니다. 그러나 XP에서는 1 분의 시간이 지나면 모든 빈 필드에 특정 날짜의 기존 레코드가 채워집니다. TAB 1을 다시 볼 때 더 이상 새로운 빈 행이 표시되지 않고 이전에 저장 한 기존 레코드 만 볼 수 있습니다.

해결 방법에 대한 아이디어가 있으십니까? 도움을 주셔서 감사합니다. 코드가 정확히 궁금 같은 경우는 환경 문제, 예를 들어 경우

Private Sub cmdNew_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdNew.Click 

    'Focus on Work tab 
    TabControl1.SelectedTab = tabWork 

    'Change the files from read-only 
    bEditMode = True 
    ChangeEditMode() 

    'Clear the current information stored in the fields 
    Try 
     Me.BindingContext(WorkRequestBindingSource).AddNew() 

    Catch ex As Exception 
     System.Windows.Forms.MessageBox.Show(ex.Message) 
    End Try 

    'Hidden text boxes populate with current selected calendar 
    'Used to populate TimeIn and DateNeed because if never clicked on, will populate as NULL on save 
    dtpDateNeed.Text = txtDate.Text 
    dtpTimeIn.Text = txtTime.Text 


End Sub 

답변

0

: 여기

은 추가 새 레코드에 대한 코드입니다 다른 국제 옵션이나 프레임 워크 버전과 같은 것입니까?

1

이것은 확실히 환경 문제입니다. 이 문제를 해결하려면 각 컴퓨터에서 어떤 브라우저를 사용하고 어떤 브라우저를 사용하는지 알고 있어야합니다.

은 XP 시스템에서 시간 초과 기간 이후 페이지를 새로 고침하여 새 레코드를 삭제하는 것과 같습니다. 나는 전에 일어난 일을 보았고 그것은 악취를 낸다.

그런 종류의 것을 잡으려면 viewstate에 더 많은 상태 정보를 저장하는 것이 좋습니다.

+0

Windows Forms에 있습니다. –

관련 문제