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.

ASP Checkbox zur laufzeit erstellen

Empfohlene Antworten

Veröffentlicht

Hallo Allersteits,

ich habe ne Fragen und zwar:

Wie kann ich Checkboxen zur laufzeit erstellen?

Problem ist folgendes: Ich hol mir eine unbestimmte anzahl an datensätzen aus einer Datenbank. dann will ich zu jedem datensatz eine checkbox haben, um den datensatz auszuwälen und dan bearbeiten oder löschen zu können.

nur leider weiss ich nicht wie ich in auf aspx seiten dynamisch checkboxen erstellen kann.

für tipps wäre ich sehr dankbar

ogooogog

Hallo auch ;)

Ich persönlich finde es mit folgendem Wege "relativ" einfach:

1. Auf der ASP-Seite ein leeres Pannel platzieren -> Dient als "Auffangbecken" für die Checkboxen)

2. Für jeden Datensatz ein Checkbox-Objekt erstellen und die nötigen Eigenschaften setzen (kenne deine datensätze nicht daher wäre z.b. Text, Checked/Unchecked etc sinnvoll weniger sinnvoll)

3. Das Checkbox-Objekt dem Panel hinzufügen per Panel.Controls.Add(Checkboxobjekt)

Das ist mal eine grobe Übersicht - Hoffe die hilft weiter sonst einfach melden ;)

  • Autor

Hey BlackDragon83m

danke erst mal für deine Antwort.

ich werde es mal so versuchen.

Das klingt gut verständlich^^

Hast du vllt auch ne Methode, mit der ich die Datensätze schön anzeigen kann.

und dann die Checkbox daneben setzen kann.

DataGrind habe ich schon mal gemacht, finde ich aber nicht so schön.

Ich denk mal es würde auch eleganter gehen.

Viele Dank nochmal:)

gruß ogooogog

Hi sorry aber ich habs gestern nicht mehr geschafft ...

Also wir lassen uns die Datensätze aus der DB als SortedList<string,string>[] zurückliefern.

Eine Methode wandelt die Tabellenergebnisse der DB Abfrage dann wie folgt um:

Jede SortedList<string,string> in dem Array bildet eine Zeile der Ergebnismenge ab. Der erste String (Key) ist der Spaltenname, der 2. string (Value) der Wert in der DB-Zelle.

Hier nun - auf Basis von unserem SortedList[] - eine Methode wie man damit dynamische Controls einbinden kann:


foreach (SortedList<string, string> row in dbResult)
{
string ip = row["IP1"] + "." + row["IP2"] + "." + row["IP3"] + "." + row["IP4"];

Label lbl_ip = new Label();
lbl_ip.Text = ip;

TextBox txb_MAC = new TextBox();
TextBox txb_SSID = new TextBox();

txb_MAC.Text = row["mac"];
txb_SSID.Text = row["ssid"];

CheckBox chb_MyBox = new CheckBox();
chb_MyBox.Text = "Soll gelöscht werden?";
chb_MyBox.Checked = false;

pnl_Entrys.Controls.Add(lbl_ip);
pnl_Entrys.Controls.Add(txb_MAC);
pnl_Entrys.Controls.Add(txb_SSID);
pnl_Entrys.Controls.Add(chb_MyBox);
}
[/PHP]

Grobe Erklärung zum Ablauf:

Jede Zeile des DB Ergebnisses wird durchlaufen.

Pro Durchlauf werden dem pnl_Entrys folgende Controls zugefügt:

1x Label mit einer IP

2x Textbox - gefüllt mit MAC und SSID

1x Checkbox mit dem Text "Soll gelöscht werden?" - Nicht angehakt

Das ist fiktiver Code - Wir fügen dem Control noch einige Literale mit HTML Code hinzu um das ganze schön zu formatieren.

Beispiel: Literale mit </td><td> wenn ganz oben eine Tabelle aufgemacht wird und am Ende eben ein </tr><tr> z.b. dann ist die Anzeige eben als Tabelle oder <br> um Zeilenumbrüche zu erzeugen usw.

Hoffe das ist als Beispiel-Code tauglich ;)

Edit: Achja der Code ist C# ;)

Hi,

du musst es nicht unbedingt mit der Funktion myPanel.Controls.Add("myCheckbox"); lösen. Es gibt in ASP.NET ein Control mit dem Namen CheckBoxList. Dieser Liste kannst du ganz einfach neue Checkboxen hinzufügen. Nur so als Tipp am Rande. Kannst dir ja aussuchen wie du es lösen möchtest. :)

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

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.