假設我使用XamlReader更改控件的內容並將UIElement添加到控件的容器中,應該觸發哪些事件?有些時候SizeChanged會觸發,LayoutUpdated會改變..儘管在其他時候這些都不會發生,儘管改變了控件的內容。在Silverlight中更改控件內容時激發的事件
在我的情況下,我正在生成一個頁面上當前視圖的縮略圖視圖。用戶可以改變頁面的內容,因此縮略圖應該相應地更新。儘管如此,佈線更新,加載,SizeChanged並不總是可靠的,因爲內容發生了變化。
我只會打電話給我使用writeablebitmap的InvalidateThumbnail,但設置內容後太快,因此我會得到一個空白縮略圖。
此刻,我破解(卑躬屈膝)是等待幾毫秒的UI做渲染實際的新的內容之前,我可以可靠地創建縮略圖。但是,我寧願每次都觸發一個事件。
可能嗎?我應該看什麼事件?我見過CompositeTarget.Rendering,但那不是我想要的。
什麼奇怪的是我還可以連接到網格的內容屬性,以尋找變化和invaldiate我的縮略圖,但它並沒有每次開火儘管已經改變的內容。我使用這種方法,但由於某些奇怪的原因,它不能按預期工作。 http://amazedsaint.blogspot.com/2009/12/silverlight-listening-to-dependency.html – nyxtom 2010-03-12 18:01:39
我將使用它作爲網格控件的替代方法。 – nyxtom 2010-03-15 14:14:38
它仍然不能解決縮略圖的問題,但問題與Silverlight的潛在加載方法的工作方式有關。 – nyxtom 2010-03-15 14:15:16