Cài đặt của tôi Windows được thiết lập để có một DPI của 96. Tuy nhiên khi tôi tạo sau Window
nó sẽ nhỏ hơn một chút sau đó màn hình của tôi (được thiết lập để độ phân giải 1920 * 1080):Tại sao 1920 thiết bị độc lập không phải là 1920 pixel với 96 DPI?
<Window x:Class="WPF_Sandbox.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:WPF_Sandbox"
mc:Ignorable="d"
Title="MainWindow"
Width="1920">
</Window>
Theo tới this msdn bài đăng blog:
1 thiết bị độc lập pixel = 1/96 inch.
1 pixel vật lý = 1/DPI (phụ thuộc vào hệ thống DPI)Cài đặt hệ thống mặc định thường chọn DPI 96 để hai loại pixel này có cùng kích thước.
Tuy nhiên, điều này có vẻ không phải là trường hợp kể từ khi số Window
của tôi rõ ràng ít hơn 1920 pixel rộng.
Nếu tôi tối đa hóa số Window
và kiểm tra ActualWidth
nó có vẻ như là 1936
.
Tại sao lại xảy ra trường hợp này?
Vì vậy, về cơ bản, khi tôi phóng to 'Window', nó sẽ lớn hơn màn hình (do đó' Width' là '1936') vì đường viền vô hình. Gotcha. –
@TimPohlmann có; thêm một chút nữa vào câu trả lời để nói rõ điều đó. – FriendlyGuy