vincular el cuadro de texto a un miembro de un objeto que a su vez es el miembro de algún otro objeto, cuya lista es la fuente de datos

.
.
List<DailyEntry> dailyEntries = BAL.getDailyEntriesToBind();

txtSite.DataBindings.Add("Text", dailyEntries, "SiteName");
.
dataRepeater1.DataSource = dailyEntries;
.
.

dónde DailyEntry y Site son

class DailyEntry
{
    public int ID { get; set; }
    public DateTime Date { get;set; }
    public Site Site { get; set; }
    public decimal Amount { get; set; }
    public string Remarks { get; set; }
}

y

class Site
{
    public int SiteID { get; set; }
    public string SiteName { get; set; }
}

now txtSite is not getting the value.

I know its because SiteName is not a direct member of DailyEntry.. I also tried with Site.SiteName as datamember for Textbox.Databindings.Add method, it didn't work

actually the text box I want to bind to, resides on a datarepeater. so I can't use like dailyEntries[0].Site as dataSource for Textbox.Databindings.Add Método

¿cuál es la solución?

EDIT: I also tried by overriding toString() método para Site clase de la siguiente manera

class Site
{
    public int SiteID { get; set; }
    public string SiteName { get; set; }

    public override string ToString()
    {
        return SiteName;
    }
}

preguntado el 08 de noviembre de 11 a las 18:11

try DataBindings.Add("Text", dailyEntries.Select(x => x.Site.SiteName), "SiteName") -

0 Respuestas

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.