假设我使用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