4 Stimmen

Im ItemdataBound-Ereignis des DataList, wie greife ich auf Spaltenname anstatt auf Index von ItemArray zu

In dem folgenden Code gibt strUsername immer einen leeren String "" zurück (und auch die anderen Spalten).

Wenn ich jedoch ItemArray verwende und darauf durch Übergabe des Spaltenindexes zugreife, funktioniert es einwandfrei. Wie greife ich stattdessen nach Spaltenname zu?

protected void dlst_ItemDataBound(object sender, DataListItemEventArgs e)
{
    if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
    {
        if (e.Item.DataItem != null)
        {
            string strUsername = DataBinder.Eval(e.Item.DataItem, "Username").ToString(); -----> gibt einen leeren String zurück
        }
    }
}

0 Stimmen

Können Sie das asp.net Markup für diese Steuerung posten?

1voto

Dan Punkte 583

Die Antwort ist hier: ItemDataBound 'e.item.dataitem("key")' mit ListView-Control

Außerdem ist DataBinder.Eval nicht verwendbar in ItemDataBound.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X