gpt4 book ai didi

c# - 确保设置 UserControl 上的属性的好方法?

转载 作者:太空宇宙 更新时间:2023-11-03 20:39:52 24 4
gpt4 key购买 nike

如果我们的 UserControl 需要设置某些属性以使其有用,那么确保设置这些属性的最佳方法是什么?即使只是作为给自己和/或亲密同事的便条。

我们尝试过使用 Initialize 方法,但这已经让我们陷入困境,因为我们忘记在一个实例中更新 Initialize,稍微改变了设计。

另一个想法是使用合理的默认值,这样如果我们忘记设置它,那么至少还有一些有用的东西。但在这种情况下,没有有用的默认值。我真的想要一个给自己的强烈提示来提醒我每次创建控件实例时都需要在这里设置一些东西。

最佳答案

您无法在设计人员级别执行任何操作,没有“我已完成设计”触发器。但肯定在运行时,尽早抛出异常:

protected override void OnCreateControl(EventArgs e) {
if (!DesignMode && !mumbleAssigned)
throw new InvalidOperationException("Oops, Mumble property wasn't set");
base.OnCreateControl(e);
}

如果您实现 OnPaint() 方法,您可以使它更微妙。并且只是 e.Graphics.DrawText 的一个提醒。在属性 setter 中调用 Invalidate()。这在设计时有效。

关于c# - 确保设置 UserControl 上的属性的好方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3460362/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com