webForumDet fria alternativet

Lägga existerande panel i ny panel

.NET

16 svar · 620 visningar · startad av Hakanrode

Medlem sedan jan. 200273 inlägg
Frågan#1

Hej!

Jag undrar om det är möjligt att lägga en panel inuti en annan panel?

Jag får felmeddelandet

"Multiple controls with the same ID 'panelSthlm' were found. FindControl requires that controls have unique IDs. "

när jag försöker lägga till en redan existerande panel i en ny panel

panelStorstad.Controls.Add(panelSthlm). Hur kommer det sig?

Tacksam för svar.

Medlem sedan mars 20023 561 inlägg
#2

För att du redan har en kontroll som heter panelSthlm. Byt namn på den så borde det fungera.

Medlem sedan jan. 200273 inlägg
#3

Hmm, fast det är ju den existerande panelen (panelSthlm) jag vill lägga till, inte ngn ny. Går det?

Medlem sedan mars 20023 561 inlägg
#4

Hur kan du lägga till en existerande panel?

Medlem sedan jan. 200273 inlägg
#5

Så det går inte alltså?

Medlem sedan mars 20023 561 inlägg
#6

Du kan inte ha två kontroller med samma namn.

Medlem sedan jan. 200273 inlägg
#7

Nej, okej. Det jag gör är att först bygga upp panelStockholm (innehåller dynamiskt tillsatta linkbuttons) sedan bygger jag upp panelStorstad (även den uppbyggd av dynamiskt tillsatta linkbuttons). Det jag sedan vill är att om Stockholm läggs till i panelStorstad så vill jag även lägga till panelStockholm till panelStorstad men det går alltså inte att lägga till en redan existerande panel?

Medlem sedan mars 20023 561 inlägg
#8

Inte så länge som den har samma namn.

/red: Så du bygger upp panelSthlm men visar den inte förrens den ska visas i panelStorstad? Är det rätt?

Medlem sedan jan. 200273 inlägg
#9

Ja det är rätt. Jag har en "meny" och om man klickar på Stockholm (som ligger i panelStorstad) så ska panelStockholm visas under länken Stockholm är det tänkt.

Jag har bara en panelStockholm, det är därför jag är lite fundersam över om det går att lägga en existerande panel inuti en annan.

Medlem sedan mars 20023 561 inlägg
#10

Så du har inte "lagt till" panelen på något annat ställe innan?

Medlem sedan jan. 200273 inlägg
#11

Hmm... nej, inte vad jag kan se (har sökt i dokumentet också)

Medlem sedan mars 20023 561 inlägg
#12

Hur gör du för att visa panelen i panelStorstad då?

Medlem sedan jan. 200273 inlägg
#13

private void visaStorstad()
{
CWorkUtilities objWork = CWorkUtilities.GetInstance(false,Session);

int stockholm = 0;

foreach(DataRow theRow in objWork.DsNews.Tables["STORSTAD"].Rows)
{

if(theRow["LOCATION"].ToString() == "Stockholm/Kista")
{
stockholm = stockholm + 1;
}

if (stockholm > 0)
{
LinkButton lbtnStockholm = new LinkButton();
lbtnStockholm.Click += new
System.EventHandler.lbtnStockholm_Click);
lbtnStockholm.Text = "<b>Stockholm/Kista</b><br><br>";
PanelStorstad.Controls.Add(lbtnStockholm);

Här efter skulle jag vilja lägga

PanelStorstad.Controls.Add(lpanelStockholm);

Medlem sedan mars 20023 561 inlägg
#14

Och hur ser instansieringen ut av panelStockholm?

Medlem sedan jan. 200273 inlägg
#15

Jag försökt både genom att lägga dit en komponent i vs

protected System.Web.UI.WebControls.Panel panelStockholm;

och skapa den direkt i koden

Panel panelStockholm = new Panel();

Medlem sedan jan. 200273 inlägg
#16

Nu får jag in panelStockholm i panelStorstad men sist. Vet du om det går att i efterhand lägga till panelStockholm på en viss placering i panelStorstad? (så att den inte hamnar sist i samligen vid controls.add så att säga....

Medlem sedan maj 20012 812 inlägg
#17
controls.AddAt()

- M

263 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
138 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)