style是一種修改屬性值是方法。我們可以將其理解為對屬性值的批處理。對批處理大家應該不會感到預設。對,通過style我們可以批量修改屬性的值。先從乙個簡單的style例子開始:
第一感覺你可能會奇怪,為什麼
style
在資源裡呢?我個人直接將其理解為
「批處理
」的緣故。因此
style
是修改多個物件的屬性值,它不從屬於單獨的元素
物件。另乙個疑惑的問題是
style
沒有設定
x:key
屬性。這是乙個非常關鍵的設定。如果我們設定了
style
的x:key
屬性,相當於在當前
window
是資源中定義了乙個名稱為
x:key
設定值的
style
物件。記住定義的效果相當於物件。如果沒有設定
x;key
,那麼這個
style
將對屬於這個
window
中所有checkbox
生效。這就起到了批處理的效果。
首先設定的是
style
的targettype
屬性,它表示我們希望修改的目標型別。然後定義乙個
setters
的集合。每個
setter
都表示修改的一
個屬性或者事件。
property
設定屬性名稱,
value
設定屬性值。
event
設定事件名稱,
handler
設定事件的響應函式名稱。只要你在
resource
做了類似的定義,在此
window
中所使用的任何
chekcbox
都會預設這些屬性值。是不是很方便呢?我們在此定義一次,可以節省很多
**。也許你還會問:這樣的統一修改屬性太武斷、霸道了吧!也許是的。我們只修改部分
element
的屬性值,而希望對某些特殊的
element
做特殊處理。這樣的需求
wpf當然也是支援的。看看下面的**:
wpf通過basedon
對這種特殊的
style
提供了支援。很明顯,
basedon
的意思是我們當前的
style
基於在資源的
checkbox
。這裡又看到了
x;key
擴充套件標記。因為我們需要的是乙個特例,乙個特殊的
style
物件。為了以後引用這個
style
,我們需要
x:key
的標識作用。其它的**與前面類似。
定義後,引用這個特殊
style
的checkbox
的**是這樣的:
你已經看到,我們在
checkbox
中指定了
style
屬性,並引用前面的
staticresource
標記。
這個很好懂
WPF中Style的使用
styel在英文中解釋為 樣式 在web開發中,css為層疊樣式表,自從.net3.0推出wpf以來,wpf也有樣式一說,通過設定樣式,使其wpf控制項外觀更加美化同時減少了大量的複雜屬性的設定。在此我們就不討論第一種方式設定控制項的外觀了,因為這不涉及到style的使用。那麼後三種設定樣式來控制控...
WPF中Style的使用
部落格 styel在英文中解釋為 樣式 在web開發中,css為層疊樣式表,自從.net3.0推出wpf以來,wpf也有樣式一說,通過設定樣式,使其wpf控制項外觀更加美化同時減少了大量的複雜屬性的設定。在此我們就不討論第一種方式設定控制項的外觀了,因為這不涉及到style的使用。那麼後三種設定樣式...
閒話WPF之二二(WPF中的Style)
style是一種修改屬性值是方法。我們可以將其理解為對屬性值的批處理。對批處理大家應該不會感到預設。對,通過style我們可以批量修改屬性的值。先從乙個簡單的style例子開始 xmlns x title viewer3d settings 第一感覺你可能會奇怪,為什麼style在資源裡呢?我個人直...