Laden...

laden von Controls

Erstellt von freak131 vor 14 Jahren Letzter Beitrag vor 14 Jahren 784 Views
F
freak131 Themenstarter:in
101 Beiträge seit 2008
vor 14 Jahren
laden von Controls

Hallo,

ich beschäftige mich seit neuen erst mit .net, vorab habe ausschließlich mit php gearbeitet.

nun habe ich das Problem, dass ich gerne meine ganze seite schachteln möchte, als beispiel nehme ich mal den headbereich

index
> head
>>navigation
>>login
> content
> footer

nun habe ich mich ein wenig informiert und bin zu dem entschluss gekommen, dass ich für jedes dieser templates ein control anlegen muss.

nun stellt sich mir jedoch die frage wie ich dynamisch controls laden kann.

ich hatte in meinem projekt/templates/ ordner diverse WebUserControls angelegt, ein VS hat mit daraus eine ascx und eine ascx.cs angelegt, diese klasse heist "templates_WebUserControl", nun hatte ich versucht;

 templates_WebUserControl WebUserControl = (templates_WebUserControl)LoadControl("templates/WebUserControl.ascx.cs");

.
Visual Studio beklagt sich darüber, dass templates_WebUserControl nicht verfügbar sei, die klassen liegen jedoch im globalen namesace ... ?

ist das wirklich der weg wie man seiten ordentlich ineinander schachtelt ?

H
81 Beiträge seit 2008
vor 14 Jahren

Hat zwar nix mit deinem Problem zu tun aber schau dir mal System.Web.UI.MasterPage an. Damit kannst du dir schon mal eine Menge Arbeit ersparen. Man braucht nicht für alles ein WebUserControl.

5.941 Beiträge seit 2005
vor 14 Jahren

Hallo freak131

Wie HeRaider schon geschrieben hat: Schau dir einmal die Masterpages an.

Du gibst bei LoadControl die .cs-Datei an, das müsste jedoch nur eine .ascx-Angabe sein.
So in der Art:


...LoadControl("templates/WebUserControl.ascx"); 

Gruss Peter

--
Microsoft MVP - Visual Developer ASP / ASP.NET, Switzerland 2007 - 2011

F
freak131 Themenstarter:in
101 Beiträge seit 2008
vor 14 Jahren

Hallo,

das sieht super aus, ich habe nun verschachtelte masterpages und nutze die platzhalter, für elemente die ich in den platzhaltern unterbringen möchte, nutze ich komponenten ?, ganz abstraktes beispiel:

eine übersicht einer Bildergallery, jedes div worin ein Bild mit label liegt wird repräsentiert durch ein control ?

ist es möglich ein control wiederum so an zu legen wie eine page ? - in verscheidenen ebenen schachteln u.s.w.

T

5.941 Beiträge seit 2005
vor 14 Jahren

Hallo freak131

Ja das ist möglich, wenn ich dich richtig verstehe.
Probiers am besten einfach mal aus.

Gruss Peter

--
Microsoft MVP - Visual Developer ASP / ASP.NET, Switzerland 2007 - 2011

H
81 Beiträge seit 2008
vor 14 Jahren
F
freak131 Themenstarter:in
101 Beiträge seit 2008
vor 14 Jahren

ich möchte die controls in einer externen dll auslagern, klappt auch soweit.
ich kann nur keine web usercontrols sondern nur asp.net server controls in dem projekt anlegen. warum ist dies so ?

vielleicht habe ich mich eben unklar ausgedrückt, ich möchte innerhalb eines controls wieder die möglichkeit haben X masterpages sowie eine page an zu legen.

5.941 Beiträge seit 2005
vor 14 Jahren

Hallo freak131

Theoretisch kannst du dir eine Stuktur entwickeln, die sich so ähnlich verhält.
Jedoch kannst du ASP.NET Masterpages nur programmatisch nicht wirklich nutzen.

Auch geht es nicht, das du UserControls in Bibliotheken auslagern kannst.
Es gibt hier Workarounds um bspw. UserControls in CustomControls zu konvertieren, jedoch halte ich das alles für ziemlich sinnfrei.

Der Knackpunkt liegt bei der Wiederverwendbarkeit. Die UserControls sind meistens nicht so generisch gehalten wie die CustomControls.
Darum macht es auch weniger Sinn, diese in mehreren Anwendungen zu benutzen.

Gruss Peter

--
Microsoft MVP - Visual Developer ASP / ASP.NET, Switzerland 2007 - 2011

F
freak131 Themenstarter:in
101 Beiträge seit 2008
vor 14 Jahren

schade,

ist das arbeiten mit masterpages / pages eine der derzeit "saubersten" möglichkeiten ? - oder gar völlig veraltert?

Ich hatte gelesen, dass es wohl auch noch ein MVC "Framework" gibt ? könnt ihr mir da was empfehlen ?

ideal wäre schnelle, saubere und vorallem nachvollziehbare entwicklung.

T

5.941 Beiträge seit 2005
vor 14 Jahren

Hallo freak131

Am besten schaust du dir ASP.NET MVC selber mal an und entscheidest dann für dich.
Wenn du konkrete Fragen dazu hast, bin ich gerne bereit diese zu beantworten.

ASP.NET WebForms sowie auch ASP.NET MVC haben Vor- und Nachteile.
Eine eierlegende-Wollmilchsau gibt es auch hier nicht 😉.

Wenn du noch Lust hast, dir eine X vs Y Diskussion anzuschauen, hier:

😃

Gruss Peter

--
Microsoft MVP - Visual Developer ASP / ASP.NET, Switzerland 2007 - 2011

H
81 Beiträge seit 2008
vor 14 Jahren

Ich würde dir empfehlen dich erst einmal mit WebForms zu beschäftigen.
Ist für einen Einstieg in ASP.NET meiner Meinung nach besser geeignet.
Schau dir aber wie Peter schon gemeint hat beide an und nimm das was dir eher zusagt.