Checkboxen in DataGrid "einbauen"

aquasonic

Erfahrenes Mitglied
Hallo zusammen,
zuerstmal, ich programmiere mit C# und habe ein DataGrid welches ich mit einer Menge von Datensätzen fülle.

Wie kann ich es nun machen das ich ihm DataGrid noch eine weitere Spalte hinzufügen kann in welcher sich je eine Checkbox befindet?!

Ich möchte so eine art Liste und man sollte dann alle Elemente aus der Liste auswählen können welche man löschen möchte.

Wisst ihr was ich meine? - Vielen Dank schon mal und guten Appedit! ;)
 
Könnt ihr mir wenigstens sagen wie ich das Datagrid zeilenweise pro Datensatz füllen kann? Also manuell...Somit komme ich dann warscheinlich selber auf die Lösung...
 
Hi,

ich habe keine konkrete Lösung, aber ich glaube, dass ich soetwas mal im .NET Framework SDK als Tutorial mal gesehen habe. Falls du das SDK installiert hast, dann geh mal unter Programme ->Microsoft Framework SDK ->Samples and Quickstart. Nach dem Installieren der Samples musst du denn unter Datagrid mal gucken.
 
Du kannst das ganze recht einfach umsetzen:

1. brauchst du eine template column in deinem datagrid, deren itemtemplate fügst du einfach eine checkbox hinzu, das ganze sollte im code dann so aussehen:

<asp:TemplateColumn HeaderText="x">
<HeaderStyle HorizontalAlign="Center" Width="20px"></HeaderStyle>
<ItemTemplate>
<asp:CheckBox id="CheckBox1" runat="server" CssClass="optional" AutoPostBack="True"></asp:CheckBox>
</ItemTemplate>
</asp:TemplateColumn>

2. um hinterher abzufragen welche checkboxen angehakt waren durchläufst du in deinem datagrid einfach alle items mit "for each" - im item einfach die zelle direkt ansprechen und den status abfragen. so ungefähr:

Dim item As DataGridItem
For Each item In datagrid1.Items
If CType(item.Cells(0).Controls(1), CheckBox).Checked = True Then
Next

-der cells index ist die nummer der spalte in dem deine checkboxen liegen - 0 = ganz links dann entsprechend + 1 für jede spalte
- den controls zusatz brauchst du hier, damit du das checkboxobjekt in der template column direkt ansprechen kannst

- das ganze dann nurnoch auf typ checkbox typen

gruß
det
 
Hallo auqasonic,

wie's geht, hat mein Vorgänger ja schon gut beschrieben.:)
Am einfachsten lassen sich die Templates übrigens bearbeiten, wenn du auf das DataGrid mit der rechten Maustaste klickst (->Kontextmenü).
Dort gibt es spezielle Einträge zu bearbeitung von Templates. So kann man ein solches Template per "zusammelclicken" hinzufügen und editieren, ohne Code zu schreiben.

MfG
Gorcky
 
Zurück