Я связываю IList с GridView. IMyInterface выглядит как
public interface IMyInterface: IHasTotalHours, IHasLines
{
DateTime GoalStartDate { get; set; }
DateTime GoalEndDate { get; set; }
}
Я связываю экземпляр с сеткой, как это:
IList<IMyInterface> instance= GetMyData();
myGrid.DataSource = instance;
myGrid.DataBind();
При привязке этого к сетке единственными членами, которые отображаются в сетке, являются прямые члены IMyInterface: GoalStartDate и GoalEndDate.
Почему? Как получить сетку для отображения элементов других интерфейсов, которые она наследует?
Обновление Наследуемые интерфейсы определяют простые свойства данных, такие как
public interface IHasTotalHours
{
string Description { get; set; }
int Hours{ get; set; }
}
public interface IHasLines
{
double TotalLines { get; set; }
double LinesPerHour { get; set; }
}
Существует класс, который реализует IMyInterface:
public class MyClass : IMyInterface
{
public string Description { get; set; }
public int Hours { get; set; }
public double TotalLines { get; set; }
public double LinesPerHour { get; set; }
public DateTime GoalStartDate { get; set; }
public DateTime GoalEndDate { get; set; }
}
Они отображаются как IMyInterface и возвращаются в список, который я привязываю к GridView.