如何强制数据网格中控件的可视化

发布于 2024-12-09 18:46:32 字数 137 浏览 0 评论 0原文

我有包含大量 DataGridTemplateColumn 列的数据网格。当我移动滚动条时,它会在控件变得可见时创建将数据加载到控件的请求。这会显着减慢界面速度。是否可以禁用此功能,以便所有控件都在构造函数中传播(就像在旧的 winform 应用程序中一样)?

I have datagrid that contains plenty of DataGridTemplateColumn columns. When I move the scrollbar it creates requests to load data to the controls as they become visible. This slows down the interface significantly. Is it possible to disable this feature so all controls are propagated in the constructor (like in good old winform applications)?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

予囚 2024-12-16 18:46:32

您可以探索许多选项来提高此性能...

当数据网格模板列单元格变得可见时触发的数据获取代码可以在另一个线程上完成,然后应将通知分派到 UI 线程。

一个快速解决方案可能是使用延迟滚动。

另一种方法是使用 DataGridTemplateColumn.CellTemplate 和 CellEditTemplate,其中 CellTemplate 可以是简单的轻量级视图,而 CellEditTemplate 可以容纳复杂的视图(这会进行大量的数据获取调用)在其编辑模式下。

这些有帮助吗?

There are many options you can explore to improve this performance...

The data fetching code that gets fired when data grid template column cells become visible, can be done on another thread and then the notifications should be dispatched to the UI thread.

A quick fix could be to use deferred scrolling.

One more way could be to use DataGridTemplateColumn.CellTemplate and CellEditTemplate, where CellTemplate can be a simple lightweight view and CellEditTemplate to hold the complex view (that makes heavy data fetching calls) in its edit mode.

Do any of these help?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文