2012-11-29 108 views
0

我能夠打開文件對話框,現在我想知道我如何獲得VAR變量東西文件的路徑類似打開文件對話框,以文件路徑的變種

 OpenFileDialog fd1 = new OpenFileDialog(); 
     fd1.InitialDirectory = "c:\\"; 
     fd1.Filter = "pdf files (*.pdf)|*.pdf|All Files (*.*)|*.*"; 
     fd1.FilterIndex = 2; 
     fd1.RestoreDirectory = true; 

所以我想在我的變種類似

 var path = @"c:\abc.pdf"; 

是否有可能

+1

它是否在您的可執行程序的同一目錄下?如果它位於任何隨機目錄中,除了提示用戶選擇外,沒有其他辦法。 –

+0

所以如何做到這一點 – user1862352

+0

我仍然不明白(即你沒有回答我的評論)所以你期望我告訴你什麼? –

回答

0

,您可以提示用戶與filedialog讓你的文件路徑。 如果你想獲得一些特定的文件夾,你可以嘗試

String PersonalFolder = 
    Environment.GetFolderPath(Environment.SpecialFolder.Personal); 

環境有很多是特定機器的文件夾。 希望它有助於

1

這就是:

if (openFileDialog1.ShowDialog() == DialogResult.OK) 
      { 
       var path = openFileDialog1.FileName; 
      } 

這樣你會得到你的文件路徑,如:

C:\文件夾1 \文件夾2 \ fffffffff ... \ ABC。 PDF

更新:

你會改變你的「變種」到「串」,你就會讓你路徑變量是一個全局變量。這裏是一個例子:

private string path; 

     private void button1_Click(object sender, EventArgs e) 
     { 
      if (openFileDialog1.ShowDialog() == DialogResult.OK) 
      { 
       path = openFileDialog1.FileName; 
      } 

     } 

     private void button2_Click(object sender, EventArgs e) 
     { 
      MessageBox.Show(path); 
     } 

你不需要讓你的變量公開,因爲你在同一類!

更新:

認爲這將做

AxAcroPDF1.src = path; 

的的Process.Start應該推出一個新的進程中打開默認客戶端是Adobe Reader的PDF文件。

+0

因爲var沒有被聲明爲public並且是特定於方法的,並且在我的名字空間中有兩個私有函數我如何在同一個應用程序中的同一個類中的另一個私有函數中使用var路徑 – user1862352

+0

但隨後因爲我正在使用axAcroPDF1 .LoadFile(路徑);該文件不加載在這個容器上 – user1862352

+0

爲什麼你沒有在你的問題中指出? – Sylca