Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何组合从一个类继承的多个子类的所有函数_C#_Subclass - Fatal编程技术网

C# 如何组合从一个类继承的多个子类的所有函数

C# 如何组合从一个类继承的多个子类的所有函数,c#,subclass,C#,Subclass,我需要使用几个嵌入在从一个类继承的不同子类中的函数。例如,ListView中的ListViewA和ListViewB。这些子类来自第三方软件和开源。有没有一种简单的方法可以组合所有功能?您可以尝试以下方法: foreach(ListView unknownListView in unknownObjectList) { if (unknownListView is ListViewA ) { var LWA = unknownListView as ListView

我需要使用几个嵌入在从一个类继承的不同子类中的函数。例如,
ListView
中的
ListViewA
ListViewB
。这些子类来自第三方软件和开源。有没有一种简单的方法可以组合所有功能?

您可以尝试以下方法:

foreach(ListView unknownListView in unknownObjectList)
{
    if (unknownListView is ListViewA )
    {
       var LWA = unknownListView as ListViewA;
       // ... do something with ListViewA 
    }
    if (unknownListView is ListViewB )
    {
       var LWB = unknownListView as ListViewB ;
       // ... do something with ListViewB 
    } 
}

制作一个扩展方法,并在其中组合所有需要的函数。你所说的组合所有函数是什么意思?有没有可能改写您的问题,然后我们清楚地了解您的意图?具体来说,ListViewA可以保存和恢复列信息,ListViewB可以对多个列进行排序。有没有一种简单的方法可以生成一个子类或一些既可以保存又可以恢复配置和排序的东西,而不需要进行太多的重新编码工作?你能编辑这个问题并提供更多的代码,这样你就可以得到具体的答案吗?目前这个问题太笼统了。我不确定我是否理解这个问题,但是你可以创建一个新类,其中包含两个类别的对象,但是你仍然必须在其中实现方法,根据所需的功能访问匹配的对象,有没有一种方法可以在不继承的情况下重写或重载类的内部方法。我不知道如何输入return。类似这样的东西。我不知道如何输入返回。