2
給定一個具有畫布的自定義用戶控件。Silverlight - 在用戶控件中暴露畫布
<Grid>
<Border BorderBrush="Black" BorderThickness="3">
<Canvas x:Name="CanvasDropArea" Background="#FFF7BDBD"/>
</Border>
</Grid>
是否有一種方法來暴露畫布以允許其他控件被追加到上述的用戶控件中?
<CustomControlWithCanvas>
<Canvas>
<!--other user control-->
<Canvas>
</CustomControlWithCanvas>
我試圖暴露出它作爲一個屬性,但失敗了,作爲其被作爲一個正常的屬性,而不是收集在允許UI元素要追加處理。但是,我可以通過檢索畫布並手動添加控件,使用後面的代碼將控件追加到元素上。
那麼暴露畫布的正確方法是什麼?以允許在設計時改變它,並保留畫布TOP和左邊的依賴項屬性。
我想知道爲什麼你不能使用正常的畫布?你需要把它放在一個用戶控件中的原因是什麼? –
我試圖實現的是有一個邊框和幾個自定義行爲連接到畫布,所以而不是重複這個(總共8畫布),我只是把它作爲一個通用的用戶控件。所以在未來,如果我要追加額外的行爲,我只需要編輯我的主要用戶控件。或者有更好的方法來實現呢? –
這些行爲是否附加到「Border」或「Canvas」? –