gpt4 book ai didi

C# 传递属性

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

我有一个类 UserPane l: Panel。我这样做。

 private bool AutoSize_ = true;
public bool AutoSize
{
get
{
return AutoSize_;
}
set
{
AutoSize_ = value;
}
}

但是当我更改 Autosize_ still 时,返回值始终为 true。如何让那个值正确传输。

最佳答案

Panel 类已经有一个属性 AutoSize .
您定义一个具有相同名称的新属性。检查您的警告,您必须具有以下内容:

warning CS0114: 'UserPanel.AutoSize' hides inherited member 'System.Windows.Forms.Panel.AutoSize'. To make the current member override that implementation, add the override keyword. Otherwise add the new keyword.

当您调用UserPanelAutoSize 属性时,您实际上是在调用父类(super class)Panel 的属性。所以你的字段 AutoSize_ 永远不会改变。

根据警告采取行动:

public class UserPanel : Panel
{
private bool AutoSize_ = true;
public override bool AutoSize
{
get
{
return AutoSize_;
}
set
{
AutoSize_ = value;
}
}
}

附带说明一下,您为什么要更改已经可用的 AutoSize 功能?您确定这是您需要的吗?

关于C# 传递属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19089774/

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