2011-01-19 55 views
1

我目前正在爲第三方應用程序開發插件DLL。我的dll的一部分包含一個彈出式窗口,其中包含一個System.Windows.Forms.MonthCalendar。現在當我在Visual Studio中使用它時,當我用測試應用程序打開彈出窗口時,它看起來是一種方式,但當第三方應用程序打開它時,它看起來不同。除了看起來不同外,他們也有不同的行爲。有誰知道爲什麼?有一件事我認爲可能是一個問題,那就是我的dll是用.Net 3.5構建的,而第三方的應用程序是.Net 2.0(我認爲)。但是當我將測試應用程序構建爲.Net 2.0時,它仍然以相同的方式工作。爲什麼MonthCalendar在第三方應用中看起來不同?

這裏就是我期待:

alt text

這裏就是我得到:

alt text

回答

4

的第三方應用程序未啓用視覺樣式,並且是因此回落到經典的Windows UI主題上。請注意,按鈕和組合框的外觀也不一樣。您必須在第三方應用程序中啓用視覺樣式才能將當前的Windows主題應用到它。

(作爲練習,嘗試切換計算機的Windows使用經典主題,然後看看工作測試應用程序 - 它應該等同於第三方之一)

+0

那麼,有沒有辦法強迫我的彈出窗口在從第三方應用程序調用時使用經典的Windows UI主題? – juharr 2011-01-19 17:44:37

相關問題