【发布时间】:2012-01-16 21:43:45
【问题描述】:
我有这个代码:Window w = // somethingw.Loaded += // some code to take a screenshot of the windoww.Show();
Loaded 事件在窗口完全加载之前触发,我得到这个图像:
我可以在w.Show() 之后和屏幕截图之前添加Thread.Sleep 或其他内容,但我需要为数百个窗口运行这段代码。
我的问题是:当窗口完全加载时是否会触发另一个事件?或某种方式来实现这一点,而无需让线程进入睡眠状态。
谢谢
【问题讨论】:
-
@H.B.我需要我项目中每个窗口的屏幕截图
-
@H.B.这真的不是他的问题的重点,即使对于 2 个窗口,这个问题也是有意义的。我不想为 2 张截图等待 4 秒,而且如果我使用太短的等待时间,我肯定不想不确定我是否会得到那个。有时您可能需要(上帝保佑)200 个具有不同数据的同一窗口的屏幕截图。我知道架构问题不容忽视,但像这样的问题并不少见,人们无法通过重新设计和重写大型代码库来解决它们。在我看来这个问题很合理。
-
@Nikola:我从来没有说过这个问题......
标签: wpf