WPF度量系統

和Winform不同,WPF的度量單位不是像素,而是設備無關單位DIU,其大小總是1/96吋

那麽,WPF中一個寬度爲96的按鈕,到底是多少個像素呢?

答:取決於系統DPI。

計算公式爲:實際像素 = 設備無關尺寸*系統DPI

這樣,在系統DPI爲96時(windows默認值),按鈕正好占用96像素;而系統DPI爲120時,將占用120個像素

像素尺寸有了,再已知屏幕DPI,就可以推算出物理尺寸了。

而屏幕DPI取決於屏幕尺寸和分辨率。

比如:12.5吋筆記本,1366*768的屏幕DPI約125dpi;18.5吋臺式機,1366*768的屏幕DPI約85dpi

不難算出,96像素在筆記本上的長度小於1吋,而在臺式機上會大於1吋

通常LCD顯示器有個自然分辨率,在該分辨率下顯示效果最佳,所以屏幕DPI可以説是固定的,設備出廠時就已經決定了。

姑且把屏幕DPI稱爲硬DPI(不大會變),而前面的系統DPI爲軟DPI(可以在控制面板中修改)。

説了這麽多,WPF度量系統的優勢在哪呢?

答:如果衹用默認的系統DPI,WPF的度量系統和Winform相比沒有優勢。因爲此時WPF的度量單位等同于像素,兩者的表現完全一樣。

不過當改變系統DPI的時候,WPF的優勢就體現出來了。

例如:當系統DPI增加到120時,WPF會自動增加像素尺寸,以顯示更多的細節,直觀上就是控件變大了,細節更清楚了

而此時Winform的尺寸卻沒法自動變化,還是老樣子,雖然系統提供了更高的像素密度,但Winform卻無法顯示更多的細節。

不過WPF的這種方式有時也會帶來問題,比如:指定窗口的寬度爲1366,在默認的系統DPI下沒問題,但如果增加系統DPI,該窗口會超出屏幕範圍。

此時反倒是winform的固定像素方式不會出問題,所以孰優孰劣也要看場合。

WPF度量系統

时间: 2024-10-14 23:01:24

WPF度量系統的相关文章

用FineReport報表系統構建財政資金和公共資金監管系統

一.應用背景 在電子化的社會,政府作為國家的權力中心和社會管理機構,在加入WTO後,將實現從管理型到管理服務型的轉變.政府機構在管理和規範國家政治經濟活動之外,將藉助強大的網路技術,把更多的時間和精力,投入到社會公眾服務中去.社會信息資源和各種政策法規不再會塵封庫中或者層層傳達,而將通過網路在第一時間與公眾會面,通過網路,政府可以廣納賢言,迅速了解社會政治經濟的發展動態,甚至是來自社會最底層的信息,並以此做出及時準確的決策,這對更好的促進經濟建設和社會穩定,好處不言而喻.按照地方政府機關提出推進

数据库问题6-將系統資料表對應至系統檢視

(转帖)http://technet.microsoft.com/zh-tw/library/ms187997.aspx 將系統資料表對應至系統檢視 (Transact-SQL) 這個主題顯示系統資料表和函數與系統檢視和函數之間的對應. 下表將 SQL Server 2000 中 master 資料庫的系統資料表對應到 SQL Server 2008 中對應的系統檢視或函數. 系統資料表 系統檢視或函數 檢視或函數的類型 sysaltfiles sys.master_files 目錄檢視 sys

用FineReport報表系統構建重慶江津區疾病預防控制信息系統

前言 一場自下而上的改革嘗試 這篇文章剛開始動筆的時候,恰逢剛接到衛生部專家即將來津對我區基本公共衛生服務以及一系中轉項目的工作現況.資金使用情況進行檢查的通知.誠然我區的工作現況不便在此進行評說,但是,做為迎檢的大頭戲――「國家基本公共衛生服務項目」 ――也是我國公共衛生制度建設的重要組成部分,卻一直以來都是困繞各級衛生行政部門和基層醫療機構老大難問題:各種讓人眼花潦亂的考核指標.紛繁複雜的業務流程,再加上沒有可以參考的工作模式以及各自為戰的軟體.平台,工作的開展難度和進展可見一斑. 雖然今年

修改windows系統下xampp中apache端口被其他程式占用的問題

windows 7安裝後啟動xampp, 提示port 443 被其他程式占用. 網上查找解決方案: http://stackoverflow.com/questions/21182512/how-to-stop-vmware-port-error-of-443-on-xampp-control-panel-v3-2-1 * Open up httpd-ssl.conf in path2xampp\apache\conf\extra * Look for the line Listen 443

Linux-PAM(Linux下的密碼認證和安全机制)系統管理員指南(中文版)

he Linux-PAM 系统管理员指南作者:Andrew G. Morgan, [email protected]翻译:孙国清(Thomas Sun),[email protected]DRAFT v0.71 1999/11/8 这个文档所涉的是系统管理员须知的关于Linux-PAM库的知识. 它涉及了设置PAM的正确语法并讨论维护一个可靠系统的正确的策略.1. 介绍 Linux-PAM (Linux下的可插入式认证模组) 是一套共享函数库,允许系统管理员来决定应用程式如何识别用户. 换句话说

Linux系統交換分區增加容量(SWAP擴容)

近期在測試Oracle 12C原SWAP預分配置3G,換算下來只有2.91G,安裝時顯示空間不足出現警告. 雖不影響使用,但本人輕微強迫朕,只能擴容,操作如下: 1.檢查SWAP大小 [[email protected] ~]# free -m total       used       free     shared    buffers     cached Mem:          1996       1530        465          5         51    

如何讓Android系統顯示CJK擴展區漢字

由於一些特殊需要,需要在個人設備上顯示CJK擴展區漢字,經多方詢問並驗證,找到了一下辦法,暫總結如下. 一.電腦上顯示 在電腦(Windows,Linux,Mac等系統)上可以通過安裝「花園明朝字體」,讓電腦/PC顯示擴展區的漢字.八卦符號.麻將符號等.截止2015年8月,Unicode已經發展到了Unicode8.0,8.0版本收錄了80,388個漢字. 『1』.花園明朝字體:目前收錄97,745字. 『2』.CJK擴展區漢字:CJK統一表意文字/CJK Unified Ideographs/

個人資料管理的網頁系統

需求: 第一階段. 動態生成網頁,此網頁中顯示當前目錄下的文件結構,並可以瀏覽文本文檔以及內建圖片. 第一階段. 建立新的文本文檔,並用富文本的方式,可標記某一段文字顏色以及添加圖片,可以加載其他更多的文件類型,如excel, word, rtf, pdf 操作流程: 用java程式執行dos語句,生成文件目錄資料.整理目錄資料成樹形結構(此檔案留做備份,比對新的目錄有無變化). 用java寫出網頁 ============================== 利用批處理生成網頁 @echo o

作業系統的類型

依處理方式而分 整批處理作業系統(Batch processing OS) 處理方式:將欲處理的資料或程式整批集中,置於如卡片.紙帶.磁帶.磁碟等儲存在媒體內,當要處理時,CPU才會到媒體中讀取資料後加以處理. 優點:整批處理作業系統是第一代作業系統,比起沒有作業系統時,更有效地改進了電腦的作業效率,減少大部份人工操作的比率. 缺點:因為CPU速度遠較存取資料的I/O為快,所以此方式CPU常被閒置,效率低. 分時作業系統(Time-sharing OS) 處理方式:CPU每次分配給各程序式(pr