Windows.UI.Composition API是可以從任何通用Windows平臺應(yīng)用程序調(diào)用的聲明性保留模式API,從而可以直接在應(yīng)用程序中創(chuàng)建合成對象、動畫效果

Composition API在 10586SDK 中就已經(jīng)出現(xiàn),但是在年度更新之后,該SDK變得更加完善,也有了更多樣性的功能。今天我們就來談?wù)勅绾卧诨?Anniversary SDK 的UWP應(yīng)用中使用Composition API創(chuàng)建DropShadow效果。

1.首先,假如我們想要為一個Ellipse對象創(chuàng)造DropShadow效果,那么第一步,我們需要先創(chuàng)建一個Canvas對象,這個對象位于Ellipse的“背后”,要被Ellipse遮擋住,比如這樣:

<Grid> <Canvas x:Name="host"/> <Ellipse x:Name="target"/> </Grid>

2.使用ElementCompositionPreview.GetElementVisual()方法獲得Canvas的Visual,然后得到該Visual的Compositor,其中下面代碼中的host是我們在XMAL中創(chuàng)建的Canvas: