7
我有一個專爲1900x1200分辨率設計的wpf應用程序,但我們的一些用戶使用Windows顯示設置將所有內容的大小調整爲125%-150%,是否有辦法應用程序忽略這些設置並仍然正常顯示?有一個WPF應用程序忽略DPI設置
我見過一個叫SetProcessDPIAware here的東西,但還沒有運氣。
這裏是顯示縮放應用的截屏開到150%
正如你可以看到應用程序來說太小了,有沒有辦法得到它是正確的大小。
我有一個專爲1900x1200分辨率設計的wpf應用程序,但我們的一些用戶使用Windows顯示設置將所有內容的大小調整爲125%-150%,是否有辦法應用程序忽略這些設置並仍然正常顯示?有一個WPF應用程序忽略DPI設置
我見過一個叫SetProcessDPIAware here的東西,但還沒有運氣。
這裏是顯示縮放應用的截屏開到150%
正如你可以看到應用程序來說太小了,有沒有辦法得到它是正確的大小。
在這種情況下,Dpi認知將無濟於事。它只會改變CompositionTarget.TransformToDevice矩陣,但控件大小不會改變。
我使用視圖來縮放所有內容。在我的應用程序的所有尺寸是專爲表面臨3畫像:
<Window>
<Viewbox Stretch="Uniform">
<Grid Width="1440" Height="2160">
<!-- ... -->
</Grid>
</Viewbox>
</Window>
您可以在屏幕上DPI計算視圖框尺寸築底。看到這個答案:https://stackoverflow.com/a/12414433/991267
您可以完全禁用WPF中的dpi縮放,方法如下[disable-dpi-awareness-for-wpf-application](https://stackoverflow.com/questions/13858665/disable-dpi-awareness- for-wpf-application/44171474#44171474) –
您可以在[disable-dpi-awareness-for-wpf-application]中爲.net 4.5中的WPF禁用dpi縮放(https://stackoverflow.com/questions/13858665/disable -dpi意識換WPF應用程序/ 44171474#44171474) –