gpt4 book ai didi

c# - 创建一个从父属性继承的环境属性

转载 作者:行者123 更新时间:2023-11-30 12:11:01 25 4
gpt4 key购买 nike

似乎无法弄清楚如何做到这一点。我有一个继承的控件:MyControl,它有一个名为 MyOtherFont 的属性。如何让 MyOtherFont 继承父控件的 Font 属性的环境值?

例如,如果我将此控件拖到字体为 Segoe UI 的窗体上,则设计器应从该窗体继承该值,而不是在属性窗口中将其显示为粗体。

谢谢

最佳答案

想通了。这是一个 C# 示例,它完全按照我的示例所描述的进行操作。希望这对某人有帮助。

public class MyControl : Control
{

private Font myOtherFont;
public Font MyOtherFont
{
get
{
if (this.myOtherFont == null)
{
if (base.Parent != null)
return base.Parent.Font;
}

return this.myOtherFont;
}
set
{
this.myOtherFont = value;
}
}

private bool ShouldSerializeMyOtherFont()
{
if (base.Parent != null)
if (base.Parent.Font.Equals(this.MyOtherFont))
return false;

if (this.MyOtherFont == null)
return false;

return true;
}

private void ResetMyOtherFont()
{
if (base.Parent != null)
this.MyOtherFont = base.Parent.Font;
else
this.MyOtherFont = Control.DefaultFont;
}
}

关于c# - 创建一个从父属性继承的环境属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16428389/

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