我的界面定义如下。
public interface IDraw
{
int DrawID {get;set;},
int Num1 {get;set;}
}
我有两个实现接口的类
public class DrawOne:IDraw
{
public int DrawID {get; set;}
public int Num1 { get; set;}
public int Num2 { get ; set;}
}
public class DrawOne : IDraw
{
public int DrawID {get; set;}
public int Num1 { get; set;}
public int Num2 { get ; set;}
public int Num3 { get; set;}
}
我还有另一个界面定义了如下方法
public interface IDrawType
{
IDraw GetData();
}
还有另一个实现此接口的类。
public class MyDrawTypeOne : IDrawType
{
public IDraw GetData()
{
DrawOne drawOne = new DrawOne();
drawOne.DrawID = 1001;
drawOne.Num1 = 8;
drawOne.Num2 = 9;
return drawOne;
}
}
我正在实现上述对象的定义,如下所示
public class ImplementationClass
{
public void ButtonClick()
{
List<IDraw> listData = new List<IDraw>();
MyDrawTypeOne drawOne = new MyDrawTypeOne();
for(int i=0; i<10; i++)
{
IDraw data = drawOne.GetDrawData();
listData.Add(data);
}
gridDraw.DataSource = listData;
}
}
我遇到的问题是,数据网格只显示DrawID和Num1。我无法在数据网格中看到Num2。这里有什么我想念的吗?
非常感谢任何帮助。
由于
答案 0 :(得分:3)
您绑定到类型IDraw
的列表,因此您的DataGrid将显示该接口上的所有公共属性。如果您希望它显示其他属性,则需要将它们添加到IDraw
界面或将您绑定的列表更改为List<DrawOne>
。
答案 1 :(得分:2)
您的界面IDraw只有DrawID和Num1作为属性。没有Num2。