Magnus, Japp, jag fattar. Marcus, det är så det fungerar förutom att det är inte då jag klickar på en node i trädet jag visar min popup, detta sker från en annan meny. Har inte vart med helt här, men kan du inte styra detta via ett event? Har inte 100% koll på events...Läsa propertie på usercontrol från popup
Har en uc.ascx som lever i default.aspx, då jag klickar på ett objekt i min uc så sätts ett värde i min propertie.
På default.aspx sidan finns en länk som visar en popup popup.aspx, jag vill i min popup läsa min propertie på min userkontroll.
Har försökte med följande :
UserControls.uc_tree tree = (UserControls.uc_tree)LoadControl("uc_tree.ascx");
Response.Write (tree.NodeClicked);
Men får bara ut 0 som sätts som default.
vad har jag missat?Sv: Läsa propertie på usercontrol från popup
Detta är omöjligt - du blandar ihop server-side och client-side tänkande. När du skickar upp din popup och kör <b>popup.aspx</b> så har den ingen kontakt med din <b>UserControl</b> överhuvudtaget, utan den enda du kan göra är att kommunicera med den webbsida (HTML) som <b>default.aspx</b> renderar.
Din UserControl är ett <b>server-side</b> objekt som <b>renderas</b> till HTML innan den skickas tillbaka till <b>client-side</b>, så du får inte med dig något objekt till webbsidan. Du får antingen använda dig av lite javascript, eller så skickar du med värdet på <b>NodeClicked</b> i <b>QueryString</b> till popup.aspx.
Hoppas det löser sig!Sv:Läsa propertie på usercontrol från popup
Problemet med att skicka värdet via q-string är att det sätts i vid ett click event.
om jag med attributes.add ska lägga till denna till min länk måste jag väl göra det i onload, vilket körs före click om jag fattat det hela rätt.Sv: Läsa propertie på usercontrol från popup
Som jag har förstått det så är det din <b>UserControl</b> som renderar (vad jag gissar på är en) meny, där du kan klicka på länkar (som du evt. skapar med hjälp av <b>HyperLink</b> kontroller) och så skall ett popup komma upp som laddar <b>popup.aspx</b>.
Om detta är fallet så är det inga problem, troligen du som tänker fel eller att det finns en ytterlighet i din kod som gör att följande inte fungerar. När du skapar dina länkar så vet du väl redan här vilken <b>Node</b> som den representerar? Varför inte sätta detta i länkens </b>NavigateUrl</b> property direkt då? Typ <b>popup.aspx?Node=<värdersomduvetredanhär></b>Sv:Läsa propertie på usercontrol från popup
Men då jag visar popup:en måste jag veta vilken node som klickats på.
Det lutar åt att jag skapar ett objekt med x-antal properties som jag sätter då jag klickar på en node.
Detta ojbekt sparar jag sedan i en session. Får i min popup läsa ut objektet från session.
Vad tror du om det?Sv: Läsa propertie på usercontrol från popup
Mvh JohanSv:Läsa propertie på usercontrol från popup
Löste det så här:
Skapade en input=hidden som jag skriver tilll då jag klickar på en node i trädet.
Lägger till attributes för att anropa javascript som visar popup.
Läser värdet från hidden fält och lägger till i querystringen.
Känns inte helt rätt men så får det bli.
Tack ändå!