2016-04-05 69 views
1

我在使用Windows Server 2008中運行的WPF應用程序中的OpenFileDialog(來自System.Windows.Forms)時出現問題。當我單擊按鈕時,鼠標切換到「等待模式「,然後轉正常,沒有任何反應,沒有一個窗口顯示。但是,當我在WindowsForm應用程序中使用相同的方法時,它在同一臺服務器上運行。WPF - 打開文件對話框WPF和服務器

我這個代碼測試:

try 
{ 
    System.Windows.Forms.OpenFileDialog dialog = new System.Windows.Forms.OpenFileDialog(); 
    dialog.ShowHelp = false; 
    dialog.Multiselect = false; 

    if (dialog.ShowDialog() == System.Windows.Forms.DialogResult.OK) 
     return; 

    txtCaminho.Text = dialog.FileName; 
} 
catch (Exception ex) 
{ 
    MessageBox.Show("Exception: " + ex.Message); 
} 

服務器是在Windows Server 2008,R2,X64與.net 4.5.2。應用程序以x86模式運行。

我也嘗試使用FileDialog的從的Microsoft.Win32Microsoft.WindowsAPICodePack.Dialogs

+0

正常工作對我來說,必須在你的項目中別的東西,你看到在一個獨立的測試程序這種行爲? –

+0

是的,這發生在所有使用OpenFileDialog的WPF應用程序中,僅在此服務器中。我發佈的代碼來自獨立測試本身。 –

回答

0

如果你的應用是4.5 .Net和較高的,這裏有一個問題,我遇到了。嘗試重新生成.net 4.0的項目並取回以前的版本。然後檢查.csproj的文件: 那裏你會看到在<PropertyGroup .../>額外標籤:

<Prefer32Bit>false|true</Prefer32Bit>