【问题标题】:.NET - Is it possible to update a screen only at the end of a method?.NET - 是否可以仅在方法结束时更新屏幕?
【发布时间】:2010-12-11 17:49:00
【问题描述】:

我正在更改 CompositionTarget.Rendering 事件中某些东西的位置,所以它有一点延迟。如果我只能在这个事件结束时更新布局,我想这个问题就会得到解决。可能吗?谢谢。

CompositionTarget.Rendering += new EventHandler(Draw); void Draw(object sender, EventArgs e) { ... //update(); }

【问题讨论】:

  • 你看到这个问题的答案了吗:stackoverflow.com/questions/82847/…
  • 我会看到的。如果它很好,那么你应该作为一个真正的答案而不是评论:D
  • 他们的代码对我不起作用 =/
  • 似乎世界上没有人知道,甚至谷歌也不知道。

标签: .net wpf


【解决方案1】:

您使用的是什么 .net 框架。 .net 4 向 uielememts 引入了 cachemode 属性。将此属性设置为 bitmapcache 的实例会将您的元素及其子元素栅格化到缓存中,并且在更改树之前不会重新栅格化。

http://msdn.microsoft.com/en-us/library/system.windows.media.bitmapcache(v=VS.100).aspx

考虑也使用 bitmaprendertarget 来激活相同的功能,灵活性更高。

【讨论】:

  • 你确定这不仅仅是 wpf 使用的延迟渲染的一个不幸的副作用吗?我发现在进行更改和在屏幕上看到更改之间通常存在不确定的时间。
猜你喜欢
  • 1970-01-01
  • 2016-11-07
  • 1970-01-01
  • 2012-04-14
  • 1970-01-01
  • 2010-11-07
  • 2012-04-17
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多