我約95%的獲得我需要的方式,但仍然存在一些問題。基本上我希望所有按鈕控件的默認樣式(在使用Expression Blend將Button拖動到窗體時使用)的行爲如下:在Expression Blend中創建一個自定義的「默認」按鈕+ WPF
鼠標懸停 - 將按鈕字體的着色更改爲漸變,並增加字體大小比控件在其「正常」狀態下分配的字體大2個點。尺寸增加非常重要,因爲「按鈕」沒有任何邊框,它們只是帶有陰影的純文本。
在點擊 - 再次更改字體顏色,去除陰影,使它看起來鬱悶(規模將仍然「正常」的字體大小+ 2分)
我現在的方法是給我的一些問題而且在這裏發佈的代碼太多了,所以我希望能夠得到一些有更多經驗的人的替代方法的建議。
我想寧願沒有一個完全自定義的按鈕控件(如「CustomButton」),並簡單地覆蓋常規默認的「Button」控件的外觀/風格,因爲它將是唯一類型的按鈕應用。但是如果一個新的類/控件是唯一的方法,我會嘗試一下。
Ex。
<Button Content="Button1"/>
<Button Content="Button2" FontSize="18"/>
<Button Content="Button3" FontSize="24"/>
在鼠標懸停時,字體大小應比每個按鈕的分配大小大2倍。現在我正在通過在按鈕的真實文本之上疊加一個TextBlock(帶有幾個綁定)來完成這項工作,但它還沒有完成。
我開始做類似之前,但無法獲得放大的按鈕,仍然居中。左上角應保持在相同的座標位置,應略微向上/左移幾個像素(取決於縮放級別)。它與中心保持在同一位置時的視覺效果並不完全相同。如果我能夠通過,這可能會起作用。我甚至沒有看觸發器,只是狀態(這似乎只適用於控件),所以這是我可以玩的新東西。 – Manius 2010-12-19 07:55:38
明白了,如果你點擊「使用相對值」,在混合比例下轉換,它保持文本居中。比我正在走下的路更簡單! – Manius 2010-12-19 07:58:57
實際上,這就是將RenderTransformOrigin屬性設置爲0.5,0.5是 - 使Button中心成爲ScaleTransform的原點。 – gstercken 2010-12-19 08:43:55