2015-01-09 3 views
0

У меня есть две формы: frmChooseDBase и frmMain. frmChooseDBase предназначен для выбора файла (файла базы данных). Как только он сделает выбор базы данных, frmMain загрузит базу данных, выбранную из frmChooseDBase. Как я могу это сделать? любая помощь. Вот мой образец коды:Как использовать OpenFileDialog

Public Class frmChooseDBase 
    Public sr As String 
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 
     If OpenFileDialog1.ShowDialog() = System.Windows.Forms.DialogResult.OK Then 
      sr = OpenFileDialog1.FileName 
      Me.Hide() 
      FrmMain.Show() 
     End If 
    End Sub 
End Class 

Private Sub FrmMain_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 
     con.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Desktop\'" & frmChooseDBase.sr & "';Extended Properties=Excel 8.0" 
     con.Open() 


FillDGView("SELECT [CCCD Loading Database] AS [Transaction Date], [F2] AS [Unit Number], [F3] AS [Category], [F4] AS [Temp Required (C)], [F5] AS [Type Length], [F6] AS [T-State], [F7] AS [Position], [F8] AS [I/B Actual Visit], [F9] AS [Fright Kind] FROM [Loading$]") 

    End Sub 

ответ

4

Если вы просто хотите загрузить файл, вам не нужно, чтобы сделать новую форму. Просто нажмите кнопку или пункт меню, в котором указано загрузочное БД. Нажатие на него откроет OpenFileDialog. Перетащите элемент управления OpenFileDialog на форму и дать ему значимое имя (openFileDialog1 ...)

openFileDialog1.Title = "Please select a DB file" 
openFileDialog1.InitialDirectory = "C:\" 
openFileDialog1.Filter = "DB Files|*.extensionHERE" 

If openFileDialog1.ShowDialog() = DialogResult.OK then 
    'Do things here, the path is stored in openFileDialog1.Filename 
    'If no files were selected, openFileDialog1.Filename is "" 
End If 

Есть много примеров с помощью элемента управления OpenFileDialog, если вы застряли, или нужна быстрая помощь.

+0

Ok, так что вместо того, чтобы да имя файла. Может быть, лучше получить файл pathco bcoz, я хочу заменить его в DataSource соединенияString. Проверить dis, con.ConnectionString = "Provider = Microsoft.Jet.OLEDB.4.0; Источник данных = '" & [ЭТО, ГДЕ Я ХОЧУ ПОПАДАТЬ ПУТЬ] & "'; Расширенные свойства = Excel 8.0 " – Fvcundo

+0

@Fvcundo Просто введите messgebox и см., что содержит имя файла, я думаю, что он может содержать полное имя пути. – Mathemats

+0

Tnx sir. Он работал. @Mathemats – Fvcundo

0

Вы даже не должны использовать контроль:

Dim ofd As OpenFileDialog = New OpenFileDialog 
ofd.DefaultExt = "txt" 
ofd.FileName = "defaultname" 
ofd.InitialDirectory = "c:\" 
ofd.Filter ="All files|*.*|Text files|*.txt" 
ofd.Title = "Select file" 
If ofd.ShowDialog() <> DialogResult.Cancel Then 
    MsgBox(ofd.FileName) 
End If 
+0

Я хочу передать то, что было выбрано из OpenFileDialog, в connectionString. .ConnectionString = "Provider = Microsoft.Jet.OLEDB.4.0; Источник данных = Рабочий стол \ '" & [ОТ ЧТО Я ВЫБИРАЛ ОТ ОТКРЫТОГО ФАЙЛА] & "'; Расширенные свойства = Excel 8.0 " – Fvcundo

Смежные вопросы