Grundsätzlich möchte ich mein Objekt zurück ...Ein Objekt aus meinen GridView-Zeilen zurückholen
Ich habe ein E-Mail-Objekt.
In meiner Benutzerverwaltung, ich eine Liste von E-Mail-Objekten.
Und ich verbinde dies mit einem GridView innerhalb meiner Benutzersteuerung
if(this.EmailCollection.Count > 0){
this.GridView1.DataSource = EmailCollection;
this.GridView1.DataBind();
}
Es wäre wirklich genial, wenn ich aus des Gridview später wieder ein E-Mail-Objekt zu bekommen.
Wie mache ich das?
Ich bin auch nur einige der Eigenschaften des E-Mail-Objekts an die GridView binden und sie werden in Artikelvorlagen eingefügt.
<Columns>
<asp:TemplateField HeaderText="Email Address">
<ItemTemplate>
<asp:TextBox ID="TextBox1" runat="server" Text=<%# Eval("EmailAddress") %> Width=250px />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Primary">
<ItemTemplate>
<asp:CheckBox runat="server" Checked=<%# Eval("PrimaryEmail") %> />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Contact Point">
<ItemTemplate>
<CRM:QualDropDown runat="server" Type=ContactPoint InitialValue=<%# Eval("ContactPoint") %> />
</ItemTemplate>
</asp:TemplateField>
</Columns>
Kann GridView das auch tun? Muss ich mein eigenes Ding rollen? Es wäre wirklich cool, wenn es das für mich tun würde.
Um mehr zu erarbeiten.
Ich speichere die List-Auflistung in den Viewstatus.
Was ich schließlich versuche zu erreichen, ist, dass es irgendwo im Steuerelement eine Schaltfläche Speichern gibt, die wenn das Ereignis ausgelöst wird, möchte ich ein E-Mail-Objekt aus einem Datarow in GridView erstellen, mit dem zu vergleichen meine ursprüngliche Liste Sammlung. Wenn es eine Änderung gibt, würde ich diese Zeile in der Datenbank aktualisieren. Ich dachte, wenn ich eine List-Sammlung in eine GridView-Datei einfügen könnte, könnte ich sie vielleicht gleich wieder zurückbekommen.
Vielleicht erstelle ich einen neuen Konstruktor für mein E-Mail-Objekt, die eine DataRow nimmt? Aber dann gibt es eine Menge Komplexität, die in das ...