Announcement

Collapse
No announcement yet.

DataGrid mit Checkbox auslesen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • DataGrid mit Checkbox auslesen

    Ich möchte auf einer Webseite ein Datagrid mit einer
    Checkbox dynamisch erstellen. Danach(beim drücken auf
    einen Button) möchte ich die Checkbox in jeder Zeile
    abfragen.
    Wie stelle ich es an? Wie komme ich an den Inhalt einer
    Zelle ran? Gibt es eine Eigenschaft, die mir die Anzahl
    der Zeilen wiedergibt?

    Mein Datagrid sieht so aus:
    <PRE>
    <aspataGrid id="DataGrid1" runat="server"
    BorderColor="black"
    GridLines="Vertical"
    cellpadding="4"
    cellspacing="0"
    width="450"
    Font-Names="Arial"
    Font-Size="8pt"
    ShowFooter="True"
    HeaderStyle-BackColor="#cccc99"
    FooterStyle-BackColor="#cccc99"
    ItemStyle-BackColor="#ffffff"
    AlternatingItemStyle-Backcolor="#cccccc"
    AutoGenerateColumns="False"
    AllowSorting="True">
    <Columns>
    <asp:BoundColumn HeaderText="Downloadgruppe"
    DataField="Groupname" />
    <asp:TemplateColumn HeaderText="aktivieren">
    <ItemTemplate>
    <asp:checkbox id="chkActiv" Text=""
    runat="server" />
    </ItemTemplate>
    </asp:TemplateColumn>

    </Columns>
    </aspataGrid>
    </PRE>

  • #2
    Hallo,

    das folgende Beispiel demonstriert etwas ähnliches: Immer dann, wenn in einer DataGrid-Zeile der Edit-Button gedrückt wurde, soll die eingebettete DropDownListe im Edit-Modus auf den alten Wert vorbelegt werden: <br>
    - Schritt 1: <b>DataGridItem</b> über <b>DataGrid.EditItemIndex</b> ermitteln <br>
    - Schritt 2: <b>FindControl</b> sucht die DropDownList in dieser DataGrid-Zeile <br>
    Da die Control-Instanz je DataGrid-Zeile vorkommt, gibt es keinen direkten Zugriffsweg, so dass FindControl nach dem Namen suchen muss.
    <pre>
    Private Sub DataGrid1_EditCommand(ByVal source As Object, _
    ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs ) Handles DataGrid1.EditCommand
    Me.DataGrid1.EditItemIndex = e.Item.ItemIndex
    Me.DataGrid1.DataBind()
    ' aktuelle Anrede vorbelegen
    If Me.DataGrid1.EditItemIndex >= 0 Then
    ' Debug-Zwecke: KDNID anzeigen; DataKeys vermeidet Probleme bei gelöschten Einträgen (Löschmarkierung)
    Dim iKDNID As Integer = DirectCast(Me.DataGrid1.DataKeys(Me.DataGrid1.Edit ItemIndex), Integer)
    Me.LabelDebug.Text = iKDNID.ToString()
    ' aktuellen ANRID-Wert ermitteln
    Dim aDR As DataRow
    aDR = Me.DataSetANRKDN1.KDN.Rows.Find(iKDNID)
    Dim iANRID As Integer = DirectCast(aDR.Item("ANRID"), Integer)
    Me.LabelDebug.Text += " ; " + iANRID.ToString()
    ' DropDownList vorbelegen
    Dim aDGI As DataGridItem = Me.DataGrid1.Items(Me.DataGrid1.EditItemIndex)
    Dim aDDL As DropDownList = DirectCast(aDGI.FindControl("DropDownList1"), DropDownList)
    aDDL.Items.FindByValue(iANRID.ToString()).Selected = True
    End If
    End Sub
    </pre&gt

    Comment


    • #3
      Das hat mir leider nicht weitergeholfen. Ich weiß nicht was Du da alles machst.

      Die Frage ist, wie greife ich auf die Eigenschaft checked einer Checkbox in einen DataGrid zu.
      Ich bräuchte ein Beispiel in C#

      Comment

      Working...
      X