Det finns väl ett event för det? (OnDataBound)
Alternativt kan du ju i PreRender iterera över de items som finns och ändra Text om Value == 0.
:)
4 svar · 338 visningar · startad av doggelito
Fyller en ddl med data från databas via en objectdatasourse.
Nu skulle jag vilja ändra texten beroende på vad värdet är.
Om värdet='0' så ska nya texten bli 'min nya text' typ (fortfarande med samma värde).
Det borde väl vara en enkel sak!
Men jag hittar liksom inget event som passar in där jag kan gå in och göra denna ändring, så hur gör jag?
Förtydligande:
Orginal html kod:
<option value="0">Gammal text</option>
Ska bli:
<option value="0">Ny text</option>
Kod:
<asp:DropDownList ID="ParentId" runat="server" DataSourceID="ObjectDataSource1" DataTextField="PageName" DataValueField="PageId"></asp:DropDownList>
<asp:ObjectDataSource ID="ObjectDataSource1" runat="server" SelectMethod="GetPages" TypeName="PagesBLL">
</asp:ObjectDataSource>
Det finns väl ett event för det? (OnDataBound)
Alternativt kan du ju i PreRender iterera över de items som finns och ändra Text om Value == 0.
:)
Mm, jag såg att ondatabound fanns men jag hajjar inte hur jag kan använda den då ondatabound inte har några specifika eventargs.
Hur skulle det se ut då?
protected void ParentId_DataBound(object sender, EventArgs e)
{
}
Nej, det har du ju förståss rätt i, my bad.
sender kan du dock göra om till en DropDownList och iterera över dess items.
Typ..
DropDownList ddl = sender as DropDownList;
foreach (ListItem item in ddl.Items)
{
if (item.Value == "0")
item.Text = "Värdet är noll";
}
Aha, kan man göra så, va trevligt! :) :bire