c# - SetBounds 和 SetBoundsCore 有什么区别

标签 c# winforms

在 WinForms 中,您可以使用 SetBounds 设置控件的边界,或者如果您已经创建了用户控件,则可以覆盖 SetBoundsCore。我想知道,它们做的是一样的还是有什么不同?

最佳答案

首先SetBounds不是虚拟的,所以如果你需要在设置边界时运行一些额外的代码,你唯一的选择是覆盖 SetBoundsCore .

SetBounds进行一些参数验证,并包含有关调用 SetBoundsCore 的逻辑具有基于 BoundsSpecified 的正确尺寸范围。它还确保不调用 SetBoundsCore除非尺寸实际发生变化。

换句话说,SetBoundsCore是实现的核心,而 SetBounds是公共(public)入口点,其中包含验证和一些其他内务处理逻辑。

关于c# - SetBounds 和 SetBoundsCore 有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8776864/

相关文章:

c# - 在您的应用程序中加载任何页面时是否有调用的函数?

c# 缺少命名空间 Windows

winforms - Devexpress Xtragrid 如何将组合框编辑器添加到列

C#创建类实例时执行类内的方法

c# - 如何仅在需要时才在 .NET WebBrowser 控件上显示垂直滚动条?

c# - ClickOnce 文件关联

c# - 比较两个列表<string>之间的差异

C# 某种插件系统

c# - 在更新 WinForms 中的控件(例如 DataGridView)时闪烁

c# - 在 datetimepicker winform c# 中禁用一些日期