WPF 的 Control 属性是否存在性能劣势?

发布于 2024-08-27 00:41:04 字数 149 浏览 14 评论 0原文

我正在学习 WPF,似乎某些属性(例如 Content)属于 Object 类型。当你有一个非常复杂的 UI 和 1000 个控件时,这会是拳击等方面的问题吗?

我发现这提供了很大的力量(让内容可以接受任何东西),但我只是想我应该询问人们对此的意见。

I am learning WPF and it seems like some properties like Content are of type Object. When you have a very complex UI with 1000s of controls, would this be a problem with boxing, etc?

I see that this provides a lot of power (having Content to take anything), but just thought I should ask people's opinions about this.

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

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

发布评论

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

评论(1

醉南桥 2024-09-03 00:41:04

由于装箱,实际上不应该对性能产生任何影响,因为通常,控件中使用的内容是另一个控件,无论如何它都将是引用类型。

但是,将 Content 设为对象可以让您使用 DataTemplates 并提供 WPF 的巨大灵活性。

话虽如此,即使您确实使用值类型作为“内容”,装箱的开销与一般 UI 代码中涉及的开销相比也将非常小。

There really shouldn't be any performance implications due to boxing, since typically, the Content used within a control is another Control, which is going to be a reference type anyways.

Making Content an object, however, allows you to use DataTemplates and provides a huge amount of the flexibility of WPF.

That being said, the overhead of boxing, even when you do use a value type as "Content", is going to be incredibly minimal when compared to the overhead involved in UI code in general.

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