2017-03-23 480 views
3

私はWindows Formsアプリケーションで作業していましたが、最近、単純な設定ページが追加され、出力先のフォルダをユーザーが選択できるようになりました。 OpenFileDialogは使用するのが面白くないので、CommonOpenFileDialogへのアクセスを得るためにWindows API CodePackを追加しました。CommonOpenFileDialogによってWindowsフォームが縮小される

CommonOpenFileDialogを開くと、添付の画像に示すように、Windowsフォームアプリケーションがより小さなサイズに縮小されます。左側に

は右側に、通常のプログラムであるダイアログ・オープンである:

On the left is the program normally, on the right is with the dialog open.

私はそれが変化していないです、前と後のフォームのサイズをチェックしてみましたので、私ましたレンガの壁のビットを打っています。どんな情報でも役立つでしょう。フォームを開くために

コードは次のとおりです。

CommonOpenFileDialog dialog = new CommonOpenFileDialog(); 
dialog.DefaultDirectory = selectedFolderTextBox.Text; 
dialog.IsFolderPicker = true; 

if (dialog.ShowDialog() != CommonFileDialogResult.Ok) return; 

selectedFolderTextBox.Text = dialog.FileName; 
+0

ダイアログを開くために使用しているコードを追加することを検討してください。それはかなり面白いバグです。 –

+0

あなたは新しいアプリを作って同じcommonopenfiledialogを開いても同じことが起こるのですか? – BugFinder

+0

@BugFinder私はそれを試すとは思わなかった、提案のおかげで。残念ながら、私は空のプロジェクトを作成したばかりで、同じ動作をしています。 – zmh

答えて

2

はapp.manifestファイルを追加することにより、DPI対応を有効にして、このブロックのコメントを解除します。

<application xmlns="urn:schemas-microsoft-com:asm.v3"> 
    <windowsSettings> 
    <dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</dpiAware> 
    </windowsSettings> 
</application> 

これは私のSurface Pro 4(dpiスケール200%)で動作します。

関連する問題