Sto legando IList a un GridView. IMyInterface assomigliaBinding IList <IMyInterfaceType> non visualizza membri di Interfacce ereditati da IMyInterface
public interface IMyInterface: IHasTotalHours, IHasLines
{
DateTime GoalStartDate { get; set; }
DateTime GoalEndDate { get; set; }
}
mi legano un'istanza a una griglia come questa:
IList<IMyInterface> instance= GetMyData();
myGrid.DataSource = instance;
myGrid.DataBind();
Quando legare questo alla griglia, gli unici membri che compaiono nella griglia sono i membri diretti di IMyInterface: GoalStartDate e GoalEndDate.
Perché è quello? Come ottengo la griglia per visualizzare i membri delle altre interfacce che eredita?
Aggiornamento Le interfacce ereditate definiscono semplici proprietà dei dati come
public interface IHasTotalHours
{
string Description { get; set; }
int Hours{ get; set; }
}
public interface IHasLines
{
double TotalLines { get; set; }
double LinesPerHour { get; set; }
}
C'è una classe che implementa 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; }
}
Questi sono espressi come IMyInterface, e restituiti nell'elenco che Sono vincolante per GridView.
Qual è la definizione per IHasTotalHours, IHasLines, IHasGoals? – shahkalpesh
Inoltre, come appare la classe che implementa IMyInterface? – shahkalpesh