我在C#中有一个类,就像这样:
public class BarChart
{
public BarData BarChartData;
public BarStyle BarChartStyle;
public BarChart(BarData data,BarStyle style)
{
this.BarChartData = data;
this.BarChartStyle = style;
}
string _uniqueName;
public string UniqueName
{
get { return this._uniqueName; }
set { this._uniqueName = value; }
}
string _rowNumber;
public string RowNumber
{
get { return this._rowNumber; }
set { this._rowNumber = value; }
}
我想创建一个名为Chart的类,它将具有BarChart类所有的所有属性.例如:
Chart someChart = new Chart(BarChart); string name = someChart.UniqueName
我对C#来说是比较新的,继承的概念对我来说有点陌生.在一天结束的时候,我会有多个不同的图表类型,如LineChart,BarChart等,但是我也希望能够移动它们,并将它们排序如下:
List<Chart> groupedCharts = listofCharts .GroupBy(u => u.RowNumber) .Select(grp => grp.ToList()) .ToList();
因此,将其抛在一般的图表类中,以方便使用LINQ.
我该怎么办?
解决方法
创建抽象图表类:
abstract class Chart
{
// Shared properties
}
然后继承它:
class BarChart : Chart
{
// Bar chart properties
}
那么你可以创建它:
Chart someChart = new BarChart();