cdr做网站怎么导出,在线做动漫图片视频在线观看网站,网站备案被注销 2016,有哪些做微信小游戏的网站本文内容
画笔的不透明度与元素的不透明度导航到对象对大型 3D 图面进行命中测试CompositionTarget.Rendering 事件避免使用 ScrollBarVisibilityAuto配置字体缓存服务以缩短启动时间
本主题提供其他的性能改进建议。 1、画笔的不透明度与元素的不透明度
使用 Brush 设置元素…本文内容
画笔的不透明度与元素的不透明度导航到对象对大型 3D 图面进行命中测试CompositionTarget.Rendering 事件避免使用 ScrollBarVisibilityAuto配置字体缓存服务以缩短启动时间
本主题提供其他的性能改进建议。 1、画笔的不透明度与元素的不透明度
使用 Brush 设置元素的 Fill 或 Stroke 时最好设置 Brush.Opacity 值而不是设置元素的 Opacity 属性。 修改元素的 Opacity 属性可能会导致 WPF 创建一个临时表面。
2、导航到对象
NavigationWindow 对象派生自 Window 并通过内容导航支持扩展它主要是通过聚合 NavigationService 和日志。 可以通过指定统一资源标识符 (URI) 或对象来更新 NavigationWindow 的工作区。 以下示例演示了这两种方法
private void buttonGoToUri(object sender, RoutedEventArgs args)
{navWindow.Source new Uri(NewPage.xaml, UriKind.RelativeOrAbsolute);
}private void buttonGoNewObject(object sender, RoutedEventArgs args)
{NewPage nextPage new NewPage();nextPage.InitializeComponent();navWindow.Content nextPage;
}每个 NavigationWindow 对象都有一个日志用于记录用户在该窗口中的导航历史记录。 日志的作用之一是允许用户回溯他们执行的步骤。
使用统一资源标识符 (URI) 进行导航时日志仅存储统一资源标识符 (URI) 引用。 这意味着每次重新访问该页时都会动态地重新构造该页根据页面的复杂程度此过程可能会非常耗时。 在这种情况下虽然占用的日志存储较少但用于重建该页的时间可能会较长。
使用对象进行导航时日志会存储对象的整个可视化树。 这意味着每次重新访问该页时无需重新构造即可立即呈现该页。 在这种情况下虽然占用的日志存储较多但重建页面所用的时间较短。
使用 NavigationWindow 对象时需要记住日志支持如何影响应用程序的性能。
3、对大型 3D 图面进行命中测试
就 CPU 消耗而言对大型 3D 图面进行命中测试是一项非常占用资源的操作。 3D 图面显示动画效果时更是如此。 如果不需要对这些图面进行命中测试请禁用命中测试。 派生自 UIElement 的对象可以通过将 IsHitTestVisible 属性设置为 false 来禁用命中测试。
4、CompositionTarget.Rendering 事件
CompositionTarget.Rendering 事件导致 WPF 持续进行动画处理。 使用此事件时应尽可能将其分离。
5、避免使用 ScrollBarVisibilityAuto
尽可能避免对 HorizontalScrollBarVisibility 和 VerticalScrollBarVisibility 属性使用 ScrollBarVisibility.Auto 值。 这些属性针对 RichTextBox、ScrollViewer 和 TextBox 对象定义并作为 ListBox 对象的附加属性。 而是将 ScrollBarVisibility 设置为 Disabled、Hidden 或 Visible。
Auto 值适用于空间有限且仅在必要时才应显示滚动条的情况。 例如与包含数百行文本的 TextBox 相比将此 ScrollBarVisibility 值用于包含 30 项的 ListBox 可能很有用。
6、配置字体缓存服务以缩短启动时间
WPF 字体缓存服务在 WPF 应用程序之间共享字体数据。 如果该服务尚未运行则你运行的第一个 WPF 应用程序将启动该服务。 如果你使用的是 Windows Vista可以将“Windows Presentation Foundation (WPF) 字体缓存 3.0.0.0”服务从“手动”默认设置为“自动延迟启动”以减少 WPF 应用程序的初始启动时间。