翻譯|行業(yè)資訊|編輯:龔雪|2022-08-04 10:50:59.310|閱讀 173 次
概述:本文將為大家解釋DevExpress WinForms控件為何棄用了一些經(jīng)典的視覺(jué)樣式,歡迎下載最新版產(chǎn)品體驗(yàn)!
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
許多DevExpress老用戶都知道,使用DevExpress WinForm UserLookAndFeel API可為單個(gè)控件或整個(gè)應(yīng)用程序啟用"classic"視覺(jué)樣式(“Flat”、“UltraFlat”、“XP”等)。在這篇文章中,小編將為大家描述這些“過(guò)時(shí)”的經(jīng)典樣式,并解釋為什么我們選擇啟用此API,并將"Skin" 樣式作為唯一選擇。
獲取DevExpress WinForms v22.1正式版下載
性能
每個(gè)皮膚都存儲(chǔ)了大量繪制在 UI 元素上方的光柵或矢量圖像,如果禁用皮膚并切換到經(jīng)典視覺(jué)樣式,理論上可以提高應(yīng)用程序性能(因?yàn)?UI 元素將不再需要檢索和繪制皮膚圖像)。
實(shí)際上,皮膚和"Flat" 應(yīng)用程序之間的性能差異可以忽略不計(jì)(考慮到現(xiàn)代硬件性能)。 矢量皮膚的可用性使這個(gè)問(wèn)題變得沒(méi)有意義——矢量圖像比光柵位圖對(duì)應(yīng)物輕量級(jí)并且消耗更少的資源。
遠(yuǎn)程桌面環(huán)境
用戶群中有一個(gè)普遍的認(rèn)知,簡(jiǎn)單的繪制方法(負(fù)責(zé)平面外觀)在遠(yuǎn)程桌面環(huán)境中最有效。 事實(shí)上,所有現(xiàn)代遠(yuǎn)程環(huán)境都采用視頻流編碼,根據(jù)內(nèi)部測(cè)試,矢量圖像在這種環(huán)境下會(huì)產(chǎn)生最佳效果。換句話說(shuō),矢量 WinForms 主題以及我們新的 設(shè)置將在遠(yuǎn)程環(huán)境中提供最佳性能 - 并且不會(huì)犧牲 WinForms 應(yīng)用程序的整體外觀。
易于訪問(wèn)
舊的"High Contrast" 皮膚是基于光柵圖像的,這意味著它無(wú)法適應(yīng)系統(tǒng)設(shè)置。 如果您希望應(yīng)用程序使用"Personalize | High contrast settings" Windows 菜單中的顏色,則必須啟用經(jīng)典的"Flat"樣式。雖然這種樣式可以從激活的Windows 高對(duì)比度主題中檢索顏色,但某些控件(例如我們的功能區(qū))保留了自己獨(dú)特的外觀。
隨著 v21.1 的發(fā)布,用戶可以使用基于矢量的高對(duì)比度皮膚。 此皮膚使用來(lái)自激活的Windows預(yù)設(shè)的顏色,并且(與我們經(jīng)典的 "Flat"樣式不同)保證在所有 DevExpress WinForm UI 控件中提供統(tǒng)一的外觀。
自定義突出顯示
由于皮膚圖像直接繪制在 UI 元素上方,因此某些使用場(chǎng)景會(huì)阻止您使用元素的外觀設(shè)置(即“BackColor”屬性)。 對(duì)于那些想要應(yīng)用自定義元素外觀(例如,將“取消”SimpleButton 涂成紅色)的人來(lái)說(shuō),禁用皮膚并切換到經(jīng)典樣式是默認(rèn)技術(shù)。
這個(gè) "limitation” 不再是限制(v18.2+),在v18.2版本中,即使皮膚處于激活狀態(tài),我們也可以使用外觀設(shè)置。
個(gè)人偏好
有些人更喜歡 "unskinned"的復(fù)古外觀和感覺(jué),現(xiàn)在您可以使用DevExpress 矢量皮膚提供 “retro” 外觀,矢量皮膚包括數(shù)十種顏色變化(調(diào)色板),包括簡(jiǎn)化的"gray-ish" 顏色選項(xiàng)。
正如我們希望在這篇文章中說(shuō)明的那樣,經(jīng)典樣式和 "unskinned" 應(yīng)用程序的情況已不再是以前那樣。 盡管有這個(gè)現(xiàn)實(shí),你可能會(huì)問(wèn)為什么? 為什么要棄用經(jīng)典樣式等長(zhǎng)期存在的功能?
這個(gè)問(wèn)題的簡(jiǎn)單答案是舊樣式設(shè)置和我們的一些最新功能不兼容。 例如,當(dāng) UserWindowsXPTheme 設(shè)置處于激活狀態(tài)時(shí),DevExpress WinForms 數(shù)據(jù)網(wǎng)格的標(biāo)題內(nèi)篩選器無(wú)法正常工作。 此外每次引入一個(gè)新的特性,比如 in-header 過(guò)濾器,我們都被迫重寫單獨(dú)的控制繪制器,支持經(jīng)典樣式等傳統(tǒng)功能的成本很高,并且在某些情況下會(huì)產(chǎn)生不可接受的結(jié)果(例如,XP主題在高DPI設(shè)備上看起來(lái)不太好)。
刪除整個(gè)自定義 API 層是一大步,官方產(chǎn)品團(tuán)隊(duì)不會(huì)急于這樣做。目前將停止修復(fù)與經(jīng)典樣式相關(guān)的錯(cuò)誤,最終將棄用這些舊設(shè)置,以防止它們產(chǎn)生類似于與標(biāo)題列過(guò)濾相關(guān)的問(wèn)題。
DevExpress WinForm擁有180+組件和UI庫(kù),能為Windows Forms平臺(tái)創(chuàng)建具有影響力的業(yè)務(wù)解決方案。DevExpress WinForms能完美構(gòu)建流暢、美觀且易于使用的應(yīng)用程序,無(wú)論是Office風(fēng)格的界面,還是分析處理大批量的業(yè)務(wù)數(shù)據(jù),它都能輕松勝任!
DevExpress技術(shù)交流群6:600715373 歡迎一起進(jìn)群討論
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@ke049m.cn
文章轉(zhuǎn)載自:慧都網(wǎng)