濮阳杆衣贸易有限公司

主頁 > 知識庫 > WPF滑塊控件(Slider)的自定義樣式

WPF滑塊控件(Slider)的自定義樣式

熱門標(biāo)簽:北京外呼系統(tǒng)咨詢電話 海南人工外呼系統(tǒng)哪家好 慶陽外呼系統(tǒng)定制開發(fā) 高德地圖標(biāo)注公司位置需要錢嗎 襄陽外呼增值業(yè)務(wù)線路解決方案 地圖標(biāo)注資源分享注冊 合肥阿里辦理400電話號 怎么去掉地圖標(biāo)注文字 廊坊地圖標(biāo)注申請入口

前言

每次開發(fā)滑塊控件的樣式都要花很久去讀樣式代碼,感覺有點記不牢,所以特此備忘。

自定義滑塊樣式

首先創(chuàng)建項目,添加Slider控件。

然后獲取Slider的Window樣式,如下圖操作。

然后彈出界面如下.我們點擊確定。

點擊確定后,我們的頁面的Resources中,增加了一系列樣式代碼,而滑塊代碼會被修改為如下樣子:

可以看到,系統(tǒng)為我們的Slider控件增加了樣式——Style="{DynamicResource SliderStyle1}"

現(xiàn)在我們查看樣式SliderStyle1,F(xiàn)12跟蹤到定義。

上述代碼中我們可以看發(fā)現(xiàn)Slider使用的模板是SliderHorizontal,但當(dāng)他的排列方向為Vertical時,則使用SliderVertical模板。

因為Slider控件默認(rèn)是橫向布局,所以我們先修改SliderHorizontal模板,對Slider進行下美化。

同樣,我們繼續(xù)F12跟進SliderHorizontal的定義。

SliderHorizontal模板的定義比較多,這里直接定義到重點內(nèi)容——軌道。

首先定位到代碼【Border x:Name="TrackBackground"】,這里的TrackBackground是控制滑塊背景顏色的,我們修改其背景顏色和邊框顏色。

得到效果如下:

但我們有時候需要拖動前后顏色不一樣,此時就靠背景修改就不夠了。

在SliderHorizontal模板中找到DecreaseRepeatButtonIncreaseRepeatButton;這兩個一個是拖動前覆蓋顏色,一個是拖動后覆蓋顏色。

修改代碼如下:

得到效果如下:

注意這里的Height一定要給值。

現(xiàn)在,我們設(shè)置好了軌道,可當(dāng)前的滑塊的顏色我們有點不太滿意,所以我們再來處理下滑塊。

滑塊模板的模板是上方代碼中粉色標(biāo)記的代碼——Thumb。

可以看到Thumb使用的是SliderThumbHorizontalDefault模板,所以,我們繼續(xù)F12跟進SliderThumbHorizontalDefault查看它的定義。

從上述代碼中可以看到,滑塊定義很簡單,布局就是一個Grid里放了一個Path,事件響應(yīng)只有3個。

下面為修改Path的Fill填充色和Stroke的劃線顏色如下:

得到效果如下:

現(xiàn)在,我們覺得矩形的滑塊不好看,需要用橢圓形的滑塊,那么,我們再來處理下滑塊。

首先刪除Thumb里定義的寬和高,因為不刪除它們,模板里的寬高會受此限制。

刪除后如下:

現(xiàn)在我們再來修改SliderThumbHorizontalDefault模板。

在模板里找到Path,修改他的Data,之前他的Data是自己畫的一個矩形,現(xiàn)在我們給他改為橢圓形,并且給Path重新設(shè)置寬高,如下:

我們得到效果如下:

可以看到,圖中的滑塊是個圓形,而我們需要的是一個橢圓形。

處理很簡單,修改Path的Width即可,我們該為14,得到效果如下:

當(dāng)然,我們既然可以通過修改樣式設(shè)計橢圓形滑塊,就也可以設(shè)計其他形狀滑塊,比如,我們修改Path如下,獲得斜角四邊形滑塊:

效果圖如下:

修改代碼如下,設(shè)置三角形滑塊:

效果圖如下:

----------------------------------------------------------------------------------------------------

上述代碼設(shè)置的都是水平方向的滑塊樣式,垂直方向的滑塊樣式設(shè)置同理,只要從模板SliderVertical開始,以此處理修改即可。

----------------------------------------------------------------------------------------------------

到此WPF滑塊控件(Slider)的自定義樣式就已經(jīng)講解完成了。

代碼已經(jīng)傳到Github上了,歡迎大家下載。

Github地址:https://github.com/kiba518/WpfSlider

----------------------------------------------------------------------------------------------------

總結(jié)

以上所述是小編給大家介紹的WPF滑塊控件(Slider)的自定義樣式,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

您可能感興趣的文章:
  • WPF自定義控件和樣式之自定義按鈕(Button)
  • WPF如何自定義TabControl控件樣式示例詳解
  • WPF的ListView控件自定義布局用法實例
  • WPF自定義TreeView控件樣式實現(xiàn)QQ聯(lián)系人列表效果
  • WPF自定義選擇年月控件詳解
  • WPF自定義實現(xiàn)IP地址輸入控件
  • 自定義WPF分頁控件的全過程記錄

標(biāo)簽:平頂山 綿陽 哈密 臺州 商丘 鎮(zhèn)江 鶴崗 株洲

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《WPF滑塊控件(Slider)的自定義樣式》,本文關(guān)鍵詞  WPF,滑塊,控件,Slider,的,自定義,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《WPF滑塊控件(Slider)的自定義樣式》相關(guān)的同類信息!
  • 本頁收集關(guān)于WPF滑塊控件(Slider)的自定義樣式的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    尉氏县| 双峰县| 平泉县| 南康市| 民和| 晴隆县| 通海县| 龙江县| 伊川县| 涞源县| 全州县| 温宿县| 凤冈县| 醴陵市| 桐柏县| 星子县| 南通市| 景德镇市| 东兰县| 渝中区| 庆城县| 台东县| 京山县| 明水县| 扎兰屯市| 尖扎县| 达孜县| 郎溪县| 中江县| 清水县| 高阳县| 来宾市| 石屏县| 荔波县| 临清市| 临猗县| 宿州市| 泽库县| 桓仁| 潜山县| 台前县|