c#类扩展器
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c#类扩展器相关的知识,希望对你有一定的参考价值。
我可能在这里还很遥远,但我想我记得很早以前就读过,有一种方法可以扩展现有的类并覆盖其现有的功能。
例如,有没有办法采用LinkButton并将其扩展为公开新方法或属性?有没有一种方法可以覆盖现有方法/属性?喜欢NavigateURL吗?
我不是在谈论子类,而是在讨论扩展。我要离开这里吗?
谢谢
答案
public static class Extensions
public static void NavigateURL(this LinkButton lb, string url)
// do something
项目中的每个LinkButton现在都将具有此方法(没有第一个参数)。第一个参数使用前缀“ this”,并且是您要扩展的类型,其余为方法参数...
另一答案
您在谈论扩展方法吗?
http://msdn.microsoft.com/en-us/library/bb383977.aspx
另一答案
听起来像直接继承的类
public class MyLinkButton : LinkButton
//you can then override any method/property (intellisense will guide you)
public override bool Enabled
get
return base.Enabled;
set
base.Enabled = value;
据我所知,您只能在基类中覆盖虚拟,抽象或已经被覆盖的方法/属性。
另一答案
是的,有一种方法可以通过使用类扩展来扩展类功能。为了获得更多帮助,您可以参考本文。https://www.geeksforgeeks.org/extension-method-in-c-sharp/
以上是关于c#类扩展器的主要内容,如果未能解决你的问题,请参考以下文章