ผมกำหนด event จาก datagrid.CellClick เพื่อให้แสดง pdf โดยใช้ adobe PDF reader และหลังจาก pdf โหลดข้อมูลเสร็จแล้วให้กระโดดกลับมาที่ datagrid บรรทัดถัดไป แต่ปัญหาที่เจอคือ focus มันยังค้างอยู่ที่ตัว PDF object ครับ มันไม่กระโดดไปที่ datagrid แต่ datagrid.currentcell เปลี่ยน ผมลองให้มันกระโดดไปที่ textbox ก็อาการเดียวกันเลย มีใครพอให้คำแนะนะผมได้บ้างครับ
โค๊ตตัวอย่าง
Code (VB.NET)
Private Sub GridFiles_CellClick(sender As Object, e As DataGridViewCellEventArgs) Handles GridFiles.CellClick
Try
If GridFiles.RowCount = 0 Then Exit Sub
Dim _File As String = GridFiles.Rows(GridFiles.CurrentCell.RowIndex).Cells(0).Value.ToString
iRowSelect = GridFiles.CurrentCell.RowIndex
PDFViewer.setShowToolbar(False)
If File.Exists(_File) = True Then
If ShowPDF(_File) = True Then
GridFiles.CurrentCell = GridFiles.Rows(iRowSelect).Cells(1)
GridFiles.Focus()
End If
StatusBar.Text = _File
Else
_File = Nothing
PDFViewer.LoadFile(Nothing)
StatusBar.Text = ""
iRowSelect = Nothing
End If
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Sub
Function ShowPDF(ByVal PDFFile As String) As Boolean
Dim Result As Boolean = False
Try
PDFViewer.LoadFile(PDFFile)
PDFViewer.setZoomScroll(70, 0, 0)
PDFViewer.Refresh()
PDFViewer.setShowToolbar(False)
Result = True
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
Return Result
End Function