WPF 實現縮放移動

2021-07-12 07:17:17 字數 944 閱讀 5630

熟悉wpf 的朋友應該知道canvas 預設是不支援scale 和offset 操作的,如果我們想對canvas 裡包含的控制項進行整體縮放或移動可能會比較麻煩。

kael rowan 提供了zoomablecanvas 類可以方便實現上述效果。我們可以在xaml 中直接使用對控制項布局進行開發,而不需要使用。

在專案中加入zoomablecanvas 相關類,編譯後工具欄中會出現zoomablecanvas 控制項。

有了zoomablecanvas 控制項接下來的事情就簡單多了,如下xaml **:

xmlns=""

xmlns:x=""

xmlns:my="clr-namespace:system.windows.controls"

title="mainwindow" height="350" width="525">

通過兩個slider 控制canvas 縮放大小與位移距離,zoomablecanvas 的使用和canvas 基本相同,可以在其中加入其他控制項,最後只需要為silder_valuechanged 事件新增好內容即可。

private void slider_valuechanged(objectsender, routedpropertychangedeventargs

e)執行程式,通過滑塊調整zoomablecanvas 的scale 與offset 屬性,快速實現多控制項縮放與移動效果,如下圖對比。

初始狀態(調整前):

調整後:

WPF 實現縮放移動

熟悉wpf 的朋友應該知道canvas 預設是不支援scale 和offset 操作的,如果我們想對canvas 裡包含的控制項進行整體縮放或移動可能會比較麻煩。kael rowan 提供了zoomablecanvas 類可以方便實現上述效果。我們可以在xaml 中直接使用對控制項布局進行開發,而不...

WPF 實現word的縮放效果

原文 wpf 實現word的縮放效果 ms word做出的效果令人十分欣喜,那麼如何用wpf達到這個效果,下面我們來進行討論。disrow 50 slider grid.row 1 horizontalalignment right width 200 margin 10,0,100,0 verti...

unity ugui縮放 移動

乾貨羅列在前,不願意看的,拿東西走人,自己研究 關於ugui的排版方面,剛上手的時候,覺得 哎喲!不錯,這個刁。但是如果你使用過qt等軟體,其實ugui的對齊功能還是很落後的。如果你繼續使用這個排版功能,你就會發現 什麼啊這是,什麼邏輯啊,完全沒懂啊。如何修改ugui控制項到我指定的大小 如何移動u...