Just nu i M3-nätverket
Jump to content

Komma åt kontroll i kontroll (sätta egenskaper)..


Mossberg

Recommended Posts

Morrn!

Har problem med att komma åt webkontroller som ligger i exempelvis en asp:Repeater.

Ex vill sätta en bild i en asp:Image-kontroll som ligger i Repeater'n utifrån om det finns ett värde i db'n. Alltså ung:

 

if(minDataReader["rad"] == null)
imRep.ImageUrl = inaktiv.gif;
else
imRep.ImageUrl = aktiv.gif;

------

<asp:repeater id="rep" runat="server">
<asp:image id="imRep" runat="server"/>
</asp:repeater>

 

Men detta går inte eftersom kontrollen ligger i en annan kontroll, hur löser man detta (jobbar inte i codebehind än)?

 

Någon som kan?

Poäng till lösning.

Hepp/Henrik

 

Link to comment
Share on other sites

Kan du inte göra en DataBind på repeatern istället ? Bör bli enklare då, då kan du göra något i stil med (obs otestad kod!):

 

<asp:Repeater

id="rep"

runat="server"

DataSource="<%# FillRepeater() %>"

>

<ItemTemplate>

 

<asp:Image

id="imRep"

runat="server"

ImageUrl='<%# ( DataBinder.Eval(Container, "rad") == System.DBNull.Value ? "inaktiv.gif" : "aktiv.gif" ) %>'

/>

 

</ItemTemplate>

</asp:Repeater>

 

 

[inlägget ändrat 2005-01-22 11:54:17 av Meme]

Link to comment
Share on other sites

Jag binder data med

minDataReader = cmd.ExecuteReader(); rep.DataSource = minDataReader; 
rep.DataBind();

och skriver ut den i repeatern med

<%# ( DataBinder.Eval(Contai...

o s v.

Behöver man alltså anropa även från repeatern för att kontroller inom den ska kopplas?

Provade att lägga in det som du skrev men vet inte riktigt hur jag ska ändra i subrutinen för att det ska bli rätt.

Provade också med att endast lägga in image-delen i repeatern med original databinding men då fick jag meddelandet att den raden inte fanns i db? Ett steg dock, lösningen kanske ligger i att endast ändra något i databinder i imagedelen?

 

/Henrik

 

Link to comment
Share on other sites

Provade också med att endast lägga in image-delen i repeatern med original databinding men då fick jag meddelandet att den raden inte fanns i db? Ett steg dock, lösningen kanske ligger i att endast ändra något i databinder i imagedelen?

 

Jag använde bara det du skrev i din kod, du får ändra fältet till det korrekta.

 

Link to comment
Share on other sites

Hmmm, jag bytte såklart ut till rätt värden först..!

Jag tror jag har löst problemet med annan kod, tack ändå för tips.

/Henrik

 

Link to comment
Share on other sites

Hmmm, jag bytte såklart ut till rätt värden först..!

Jag tror jag har löst problemet med annan kod, tack ändå för tips.

/Henrik

 

Hmmm, jag tror jag sluta försöka hjälpa dig Mossberg.

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...