Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

du errechnest im ASP.NET-Code wie viele Spalten/Zeilen die Tabelle haben soll, baust den HTML-Code dann im ASP.NET-Code zusammen und schreibst den zusammengebauten Code dann per Response.Write oder mittels eines asp:labels auf die Seite.

  • Autor

Ja das Problem ist nur das mir der Name der Funktion um den HTMl Code zu schreiben nicht mehr einfällt. Ich habs mal mit der HtmlWriter Klasse probiert aber das hat irgendwie nichts bewirkt.

Response.Write ist ja nur für Testausgaben geeignet, weil der damit ausgegebene Text immer am Anfang des Html Codes steht.

Ja das Problem ist nur das mir der Name der Funktion um den HTMl Code zu schreiben nicht mehr einfällt. Ich habs mal mit der HtmlWriter Klasse probiert aber das hat irgendwie nichts bewirkt.

[...]

Response.Write ist ja nur für Testausgaben geeignet, weil der damit ausgegebene Text immer am Anfang des Html Codes steht.

HtmlWriter sagt mir nix in zusammenhang mit ASP.NET, aber die klassen HtmlTable, HtmlTableCell und HtmlTableRow sind speziell dafür da, daten in tabellen, zeilen und zellen rauszuschreiben. sind im namespace System.Web.UI definiert, AFAIR.

wenn der inhalt der dynamischen tabelle (was ich annehme) aus einer datenbank o.ö. kommt, empfiehlt sich auch die verwendung eines DataGrid / DataSet aus System.Data.

s'Amstel

Das ist doch ganz einfach, wenn Du beim Page_Load die Anzahl der Zeilen/Spalten kennst.

Du legst im ASP.NET "HTML"-Text-Teil eine ganz normale, aber leere, Tabelle an, gibst ihr aber zusätzlich eine id und setzt die runat Eigenschaft auf "server". Nun kannst Du auf die Tabelle wie auf ein Objekt, dass den Namen trägt, den Du als id angegeben hast, zugreifen und nach belieben Veränderungen vornehmen.

Du musst den HTML-Quelltext für die fertige Tabelle also nicht selbst erzeugen und als Zeichenkette herausschreiben, sondern kannst die Erzeugung der "<tr>"s und "<td>"s der ASP.NET Runtime überlassen.

Brauchst Du ein Beispiel?

  • 1 Jahr später...

Hallo,

ich weiß, dieser Thread ist schon ein paar Tage alt, aber dieses Thema interessiert mich sehr. Könnte mir jemand ein Beispiel für Bubbles Lösung geben?

Der Code deine Default.aspx-Datei:


<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Meine dynamische Tabelle</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Table ID="myDynamicTable" runat="server" GridLines="Both">
</asp:Table>
</div>
</form>
</body>
</html>

[/PHP]

Und als Code-Behind dieses hier:

[code] using System; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { int numRows = 10; int numCols = 5; for (int r = 0; r < numRows; r++) { TableRow myRow = new TableRow(); for (int c = 0; c < numCols; c++) { TableCell myCell = new TableCell(); myCell.Controls.Add(new LiteralControl("myRow: " + r.ToString() + ", myCell: " + c.ToString())); myRow.Cells.Add(myCell); } myDynamicTable.Rows.Add(myRow); } } } [/code]

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.