Toon posts:

[ASP.NET] Passing variable Usercontrols

Pagina: 1
Acties:

Verwijderd

Topicstarter
wat heb ik:

1 aspx pagina met twee ascx pagina's
deze twee usercontrols bevatten elk een listbox.

wat wil ik:
aan de hand van de selected index (1 van de usercontrols) de andere vullen met gerelateerde content.

wat kan ik niet:
een manier vinden om een variable vanaf usercontrole 1 naar usercontrole 2 te sturen.

wat vraag ik:
een korte uitleg hoe je een variable vertuurd van usercontrole 1 naar 2, of vanuit de aspx pagina naar een usercontrol. een simpel voorbeeld.

kep echt veel gezocht en gelezen, maar een manier ???

thanks,

  • GaveGozer
  • Registratie: Februari 2000
  • Laatst online: 25-09-2025

GaveGozer

That's Me

ik weet zo 1,2,3 niet of dat lukt...

kun je die 2 usercontrols niet op 1 pagina maken??

Ik was hier en ai 't nie geleuf dan maak ik ow so wat anders wies!


  • PhoneTech
  • Registratie: Mei 2000
  • Laatst online: 22-08 13:56
Je kan objecten op verschillende manieren versturen naar een usercontrol

Je kan in de codebehind een control aan de pagina toevoegen en variabelen toekennen. Dat doe je met deze code

ASP:
1
2
3
Control cPathBar = LoadControl("UserControls/Path.ascx"); //Deze laadt de usercontrol in 
((UserControls.Path)cPathBar).showIcon = Icons.Folder; //Om een variabele te versturen, moet je deze aanspreken door het object te casten
plhMain.Controls.Add(cPathBar); // voeg de control toe aan een placeholder


In de user control MOET moet je de klasse naam opnemen!

ASP:
1
<%@ Control Language="c#" ClassName="Path" AutoEventWireup="false" Codebehind="Path.ascx.cs" Inherits="Site.UserControls.Path" TargetSchema="http://schemas.microsoft.com/intellisense/ie5"%>


ClassName="Path" zou je dus moeten toevoegen!

De variabelen in de usercontrol moeten natuurlijk public zijn!

Als je de control in designtime hebt toegevoegd, staat er per definitie nix in de code behind

Je zal dan de usercontrol als object in de codebehind moeten declareren
ASP:
1
protected UserControls.Path PathBar;


Vervolgens kan je in de Page_Load de properties van de usercontrol waarden geven
ASP:
1
2
PathBar.strNodeTypeName = "User Folder";
PathBar.showIcon = Icons.UserFolder;



Het ID van de usercontrol die je in designtime hebt toegevoegd, moet natuurlijk het ID PathBar hebben!

Ik hoop dat je hier mee wat kan :)