Hallo,
also ich bin nun seit l�ngerem daran, diese L�sung zu verfolgen.
Irgendwie steige ich da nicht ganz durch.
Ich habe folgende Vorgabe:
Eine Tabelle (tblLinks) mit verschiedenen Links, die jeweils eine SprachenID
haben (fldLanguage).
Nun m�chte ich auf einer Seite erst 5 Links mit der Sprache 1 und dann 5 mit
der Sprache 2 abbilden. Danach sollen 5 Links kommen, die weder Sprache 1
noch 2 haben, also >2.
Ich habe mir also drei Tables in mein DataSet geladen, die durchnummeriert
sind (tblLinks_0, tblLinks_1 und tblLinks_2).
Nun soll zwischen den drei Abschnitten (nicht zwischen den Links selber!)
eine Trennlinie erscheinen.
Bisher habe ich es so gel�st, dass ich 3 GataGrids erzeuge, die jeweils an
die Tabellen binde und in die Headline jedes DataGrids die Trennlinie
reinhaue.
Das ist ja auch gut und sch�n, _nur_
Jetzt sind es nat�rlich 3 Tabellen, Layout sieht also komisch aus.
Warum ich keinen Repeater nehme? Ich habe auf der Seite, auf der das ganze
ausgef�hrt wird, ein DataGrid mit mehreren ColumnTemplates. Per
�bergabeparameter, w�hle ich das passende aus und f�ge es meinen neuen
DataGrids hinzu. So habe ich eine aspx-Seite, in der man fr�hlich die
Layouts ab�ndern kann und man sofort das Ergebnis sieht.
Nun wollte ich halt dahingehen, dass ich ein eigenes Control bastele, damit
meine Probleme sich l�sen lassen.
Ist das �berhaupt der richtige Ansatz????
Irgendwie raucht mir tierisch der Kopf.
Danke f�r Eure Hilfe.
Ciao
Janko
----- Original Message -----
From: "Thomas Woithe" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Wednesday, March 12, 2003 11:54 AM
Subject: [Asp.net] AW: [Asp.net] Datagrid mit mehreren Tables f�llen
> Hallo Janko,
>
> es existieren viele Wege. 2(+1) habe ich unten skizzenartig abgehandelt.
>
>
> 1) Der beste Weg d�rfte sein, ein eigenes DataGrid zu entwerfen und
> entsprechende Vorlagebereiche in einem Custom Tag zu kapseln. Das ist
> allerdings auch mit etwas Aufwand verbunden, jedoch aus der Sicht der
> Projektverwaltung und Wiederverwendbarkeit von Quelltexten und der
> Testverwaltung die zu pr�ferierende Vorgehensweise. Ansonsten ist der im
> .NET Framework mitgelieferte Tag nicht weiter ver�nderbar <hoffentlich
> schreit jetzt niemand />, jedoch vererbbar ;-).
>
> 2) Ein weiterer Weg, den Du dann in Codebibliotheken oder WebControls
> zum Beispiel mit Dreamweaver MX wiederverwenden kannst, ist die
> Erstellung "Deines" Layouts (Tabellen, Flashobjekte u.s.w.), bestehend
> aus mehreren Tabllen und deren Anordnung. Danach schachtelst Du die
> Region mit einem Repeater Element (und wiederholst Sie damit f�r jeden
> Datensatz, den Du vorh�lst). Auch das geht wieder mit dem Dreamweaver MX
> sehr einfach und ein Paging ist total schnell angepasst. Ich habe f�r
> folgendes Beispiel mit dem DWMX 2 Minuten gebraucht. Es sollte mit jedem
> anderen Tool, ich verwende sonst noch VS.NET genauso gehen, nur die Tags
> sehen etwas anders aus. Im unten gezeigten Beispiel wurde
> konsequenterweise jeder Code ausgelagert. Das Paging habe ich auch mit
> dazu gebaut. OK, sch�n machen musst Du es selbst, gilt auch f�r Dein
> Tabellenlayout.
>
> <%@ Page Language="C#" ContentType="text/html"
> ResponseEncoding="iso-8859-1" %>
> <%@ Register TagPrefix="MM" Namespace="DreamweaverCtrls"
> Assembly="DreamweaverCtrls,version=1.0.0.0,publicKeyToken=836f606ede05d4
> 6a,culture=neutral" %>
> <MM:DataSet
> id="DataSet1"
> runat="Server"
> IsStoredProcedure="false"
> ConnectionString='<%#
> System.Configuration.ConfigurationSettings.AppSettings["MM_CONNECTION_ST
> RING_conNewsFlash"] %>' DatabaseType='<%#
> System.Configuration.ConfigurationSettings.AppSettings["MM_CONNECTION_DA
> TABASETYPE_conNewsFlash"] %>' CommandText='<%# "SELECT * FROM
> newpostings" %>' Debug="true" PageSize="1" CurrentPage='<%#
> ((Request.QueryString["DataSet1_CurrentPage"] != null) &&
> (Request.QueryString["DataSet1_CurrentPage"].Length > 0)) ?
> Int32.Parse(Request.QueryString["DataSet1_CurrentPage"]) : 0 %>'
> > </MM:DataSet>
> <MM:PageBind runat="server" PostBackBind="true" />
> <html>
> <head>
> <title>NEWSFLASH</title>
> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
> </head> <body> <ASP:Repeater runat="server" DataSource='<%#
> DataSet1.DefaultView %>'>
> <ItemTemplate>
> <!-- HIER KOMMT JETZT DEINE LAYOUT IDEE -->
> <p><b>
> <%# DataSet1.FieldValue("header", Container) %>
> </b><br>
> <%# DataSet1.FieldValue("teaser", Container) %>
> <br>
> <a href="show.aspx?cid=<%# DataSet1.FieldValue("cid", Container)
> %>">full story </a></p>
> <!-- HIER IST JETZT DEIN LAYOUT ZU ENDE -->
> </ItemTemplate>
> </ASP:Repeater>
> <p> Datensätze <%= (DataSet1.RecordCount == 0) ? 0 :
> (DataSet1.StartRecord + 1) %> bis <%= DataSet1.EndRecord %> von <%=
> DataSet1.RecordCount %> <br> <MM:If runat="server" Expression='<%#
> (DataSet1.CurrentPage != 0) %>'>
> <ContentsTemplate> <a href="<%#
> Request.ServerVariables["SCRIPT_NAME"]
> %>?DataSet1_currentPage=0">Erster</a>
> </ContentsTemplate>
> </MM:If> <MM:If runat="server" Expression='<%#
> (DataSet1.CurrentPage != 0) %>'>
> <ContentsTemplate> <a href="../wwwroot/app/<%#
> Request.ServerVariables["SCRIPT_NAME"] %>?DataSet1_currentPage=<%#
> DataSet1.CurrentPage - 1 %>">Zurück</a>
> </ContentsTemplate>
> </MM:If> <MM:If runat="server" Expression='<%#
> (DataSet1.CurrentPage < DataSet1.LastPage) %>'>
> <ContentsTemplate> <a href="../wwwroot/app/<%#
> Request.ServerVariables["SCRIPT_NAME"] %>?DataSet1_currentPage=<%#
> DataSet1.CurrentPage + 1 %>">Vor</a>
> </ContentsTemplate>
> </MM:If> <MM:If runat="server" Expression='<%#
> (DataSet1.CurrentPage < DataSet1.LastPage) %>'>
> <ContentsTemplate> <a href="../wwwroot/app/<%#
> Request.ServerVariables["SCRIPT_NAME"] %>?DataSet1_currentPage=<%#
> DataSet1.LastPage %>">Letzter</a>
> </ContentsTemplate>
> </MM:If>
> <p>
> <a href="../wwwroot/app/insert.aspx">Neue Nachricht</a><a
> href="../wwwroot/app/update.aspx">Update Nachricht</a>
> </p>
> </body>
> </html>
>
> 3) Wenn Du obiges Beispiel f�r Dich angepasst hast, dann w�rde ich es in
> ein Custom WebControl legen. Damit w�re dann eine wiederholte Nutzung
> analog des von Dir nachgefragten DataGrids m�glich und man kann alles
> parametrisieren.
>
> Das Grundprinzip bleibt in allen IDEs gleich.
> Ich hoffe das hilft, ansonsten melde Dich einfach nochmal!
>
> Herzliche Gr��e,
> Thomas Woithe
>
> ________________________________________________________
> .NET Softwareentwicklung, Qualit�tsmanagement
> Rich Internet mit .NET und Flash Communication Server MX
>
> http://www.servicepark.com mailto:[EMAIL PROTECTED]
> Tel: +49 (0)30 9142 3830 , Fax: +49 (0)30 9142 3827
> Beuthstr. 32, 13156 Berlin, Germany
>
> -----Urspr�ngliche Nachricht-----
> Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Im
> Auftrag von Janko Wellmeier
> Gesendet: Mittwoch, 12. M�rz 2003 10:14
> An: [EMAIL PROTECTED]
> Betreff: [Asp.net] Datagrid mit mehreren Tables f�llen
>
> Hallo,
> gibt es eine M�glichkeit, dass ich einem DataGrid mehrere Tables
> zuordne??
> W�rde n�mlich gerne das Paging benutzen und kann es daher nicht auf
> mehrere DataGrids aufteilen.
> Danke
> Janko
>
> ------------------
> Professionelles .NET Hosting auf leistungsf�higen Servern.
> ASP.NET, VS.NET, XML, CDO, SQL 2000 und vieles mehr.
> Informieren Sie sich jetzt unter http://www.aspnet.de
> _______________________________________________
> Asp.net mailing list
> [EMAIL PROTECTED]
> http://www.glengamoi.com/mailman/listinfo/asp.net
>
------------------
Professionelles .NET Hosting auf leistungsf�higen Servern.
ASP.NET, VS.NET, XML, CDO, SQL 2000 und vieles mehr.
Informieren Sie sich jetzt unter http://www.aspnet.de
_______________________________________________
Asp.net mailing list
[EMAIL PROTECTED]
http://www.glengamoi.com/mailman/listinfo/asp.net