2012-04-12 92 views
1

我正在爲具有480 * 800垂直屏幕的手持式x86設備開發.NET應用程序。除非涉及到打開文件/保存文件設計,否則一切都很好。顯示時,默認的OpenFileDialog和其他類似對話框的寬度太大,使得打開按鈕偏離屏幕並且總是從中取消按鈕。其實用戶可以調整對話框它的顯示後,卻存在一個最小尺寸 width仍大於480使OpenFileDialog變小的簡單方法?

至於我可以看到有沒有辦法直接操作OpenFileDialog,也沒有做任何的繼承。 OpenFileDialog繼承的FileDialog不可繼承。而CommonDialog看起來太遠了。谷歌搜索顯示了一些商業對話框組件,它具有很多我不想要的功能,黑客解決方案最終會包含一個至少有4個全新類的項目,以及一些我不需要的Win32 API和消息傳遞機制。

這很簡單,我只是想要一個簡單的方法來修復OpenFileDialog的寬度爲480或更小。任何方式在這個?

+1

如果您需要非默認行爲,則需要3PC或進行Win32本機API調用。 WinForms組件相當有限。 – 2012-04-12 21:18:06

+1

如果它有一個最小尺寸,它有它的原因。在這種情況下,最好的選擇可能是創建自己的對話框。 – 2012-04-12 21:23:30

+0

@TetsujinnoOni我知道,但這就是我不喜歡的地方 - Win32 API太強大了,就像我必須從草圖開始做一個openfiledialog。我試圖找到一個天才簡單的解決方案 – 2012-04-12 21:24:06

回答

1

打開文件對話框是一個系統對話框。這意味着您的應用程序無法控制它。它由用戶控制。如果用戶想在一個應用程序中更改其大小,它將在所有應用程序中獲得新的大小,因爲這個大小是用戶的偏好。

通用對話框的目的是爲用戶提供標準的UI部件。想象一下,如果每個應用程序都會使用自己的OpenFileDialog,那麼搜索要打開的文件對用戶來說是多麼不舒服。

但是,您可以構建自己的對話框。