Wie w�rs mit einer DataList, Repeater :-) Wir bauen uns ein SuperGrid. J�rg
-----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] On Behalf Of Andreas Rudischhauser (N) Sent: Friday, February 21, 2003 9:46 AM To: [EMAIL PROTECTED] Subject: Re: [Asp.net] DataGrid Item Template dynamisch erzeugen Das finde ich eine l�bliche Sache. Ich k�nnte noch ein WYSIWYG - Label f�r eine WysiwygLabelColumn beisteuern, dann w�r das ne runde Sache ----- Original Message ----- From: "Andre Seifert" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Friday, February 21, 2003 9:34 AM Subject: AW: [Asp.net] DataGrid Item Template dynamisch erzeugen > Wenn Du willst kann ich Dir in der n�chsten Woche eine DLL schicken, > die einen Namespace TemplateColumns hat. Bis jetzt habe ich schon eine > TextBoxColumn, LabelColumn, DropDownListColumn, CheckBoxColumn. > Fehlt vielleicht noch eine ImageColumn, ButtonColumn, HyperLinkColumn... > > Wenn Du noch ein paar Ideen hast, dann schreib mir, ich ver�ffentliche > die DLL dann auf meiner Seite (zum freien Gebrauch), wie gesagt, ich > finde das auch eine gute Idee... > > andre.seifert > @xmmm.de > > > >-----Urspr�ngliche Nachricht----- > >Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] > >Im Auftrag von Joerg Uth > >Gesendet: Freitag, 21. Februar 2003 09:22 > >An: [EMAIL PROTECTED] > >Betreff: RE: [Asp.net] DataGrid Item Template dynamisch erzeugen > > > > > >Super Andre! > > > >Ich denke wenn man jetzt hingehen w�rde und einige WebControls z.b. > >Radiobutton Noch als ColumnsTemplate definiert sollte man in der Lage > >sein viele DataGrids ohne irgend eine Zeile in der aspx Seite > >vollst�ndig on the fly zu generieren. > > > >J�rg > > > >-----Original Message----- > >From: [EMAIL PROTECTED] > >[mailto:[EMAIL PROTECTED]] On Behalf Of Andre Seifert > >Sent: Thursday, February 20, 2003 4:04 PM > >To: [EMAIL PROTECTED] > >Subject: AW: [Asp.net] DataGrid Item Template dynamisch erzeugen > > > > > >Habe jetzt nochmal, weil es mich auch interessiert, das DataBinding > >mit in dieser Klasse erm�glicht. Als Spalte habe ich in meiner SQL > >Server Tabelle eine vom Typ "Bit". > > > >Den Spaltennamen einfach als 2. Parameter im Konstruktor angeben, und > >schon wird die Checkbox datengebunden. > > > >Code f�r die Klasse CheckBoxColumn: > >========================================================== > > > >public class CheckBoxColumn : ITemplate > > { > > string columnID; > > string columnBindField; > > > > public CheckBoxColumn(string colID, string colBindField) > > { > > columnID = colID; > > columnBindField = colBindField; > > } > > > > public void InstantiateIn(Control container) > > { > > CheckBox myCheckBox = new CheckBox(); > > myCheckBox.ID = columnID; > > myCheckBox.DataBinding+=new EventHandler(this.BindCheckBoxColumn); > > container.Controls.Add(myCheckBox); > > } > > public void BindCheckBoxColumn(object sender, EventArgs > >e) > > { > > CheckBox cbControl = (CheckBox)sender; > > DataGridItem container = > >(DataGridItem)cbControl.NamingContainer; > > int i =container.DataSetIndex; > > bool t = false; > > try > > { > > t = > >bool.Parse(((DataRowView)container.DataItem).Row[columnBindFiel > >d].ToStri > >ng().Trim()); > > } > > catch > > { > > t=false; > > } > > cbControl.Checked = t; > > } > > } > > > >andre.seifert > >@xmmm.de > > > > > >>-----Urspr�ngliche Nachricht----- > >>Von: [EMAIL PROTECTED] > >>[mailto:[EMAIL PROTECTED]] > >>Im Auftrag von Joerg Uth > >>Gesendet: Donnerstag, 20. Februar 2003 13:35 > >>An: [EMAIL PROTECTED] > >>Betreff: RE: [Asp.net] DataGrid Item Template dynamisch erzeugen > >> > >> > >>Danke das ist ja mal ein guter Ansatz auf den ich bauen kann > >> > >>J�rg > >> > >>-----Original Message----- > >>From: [EMAIL PROTECTED] > >[mailto:[EMAIL PROTECTED]] > >>On Behalf Of Andre Seifert > >>Sent: Thursday, February 20, 2003 1:21 PM > >>To: [EMAIL PROTECTED] > >>Subject: AW: [Asp.net] DataGrid Item Template dynamisch erzeugen > >> > >> > >>Ich habs mal nachvollzogen... > >>Wichtig ist die Klasse unten (CheckBoxColumn), die die Schnittstelle > >>ITemplate implementiert. > >> > >>hier ein Beispiel mit CheckBox und Label. > >> > >>in der DataGridDynamicTemplate.aspx liegt nur ein DataGrid > >(DataGrid1). > >> > >>DataGridDynamicTemplate.aspx.cs > >>====================================================== > >> > >>using System; > >>using System.Collections; > >>using System.ComponentModel; > >>using System.Data; > >>using System.Data.SqlClient; > >>using System.Drawing; > >>using System.Web; > >>using System.Web.SessionState; > >>using System.Web.UI; > >>using System.Web.UI.WebControls; > >>using System.Web.UI.HtmlControls; > >> > >>namespace testSuite > >>{ > >> public class DataGridDynamicTemplate : System.Web.UI.Page { > >> protected System.Web.UI.WebControls.DataGrid DataGrid1; > >> > >> private void Page_Load(object sender, System.EventArgs > >>e) > >> { > >> TemplateColumn tc = new TemplateColumn(); > >> tc.ItemTemplate = new > >>CheckBoxColumn("cb","myCB"); > >> > >> DataGrid1.Columns.Add(tc); > >> SqlConnection conn1 = new > >SqlConnection("Server=DBSERVER;User > >>Id=USERNAME;Password=PWD;Initial > >>Catalog=PASSWORD"); > >> SqlDataAdapter adp1 = new SqlDataAdapter("SELECT > >>* FROM bpd_produkte",conn1); > >> DataSet ds = new DataSet(); > >> conn1.Open(); > >> adp1.Fill(ds); > >> DataGrid1.DataSource=ds; > >> DataGrid1.DataBind(); > >> } > >> > >> #region Web Form Designer generated code > >> override protected void OnInit(EventArgs e) > >> { > >> // > >> // CODEGEN: Dieser Aufruf ist f�r den ASP.NET > >>Web Form-Designer erforderlich. > >> // > >> InitializeComponent(); > >> base.OnInit(e); > >> } > >> > >> /// <summary> > >> /// Erforderliche Methode f�r die Designerunterst�tzung. > >> > >> /// Der Inhalt der Methode darf nicht mit dem > >>Code-Editor ge�ndert werden. > >> /// </summary> > >> private void InitializeComponent() > >> { > >> this.Load += new > >>System.EventHandler(this.Page_Load); > >> > >> } > >> #endregion > >> } > >> public class CheckBoxColumn : ITemplate > >> { > >> string columnID; > >> string columnBindField; > >> > >> public CheckBoxColumn(string colID, string colBindField) > >> { > >> columnID = colID; > >> columnBindField = colBindField; > >> } > >> > >> public void InstantiateIn(Control container) > >> { > >> CheckBox myCheckBox = new CheckBox(); > >> Label lb = new Label(); > >> lb.Text = columnBindField; > >> myCheckBox.ID = columnID; container.Controls.Add(myCheckBox); > >> container.Controls.Add(lb); > >> } > >> } > >>} > >> > >>andre.seifert > >>@xmmm.de > >> > >> > >>>-----Urspr�ngliche Nachricht----- > >>>Von: [EMAIL PROTECTED] > >>>[mailto:[EMAIL PROTECTED]] > >>>Im Auftrag von Joerg Uth > >>>Gesendet: Donnerstag, 20. Februar 2003 12:09 > >>>An: [EMAIL PROTECTED] > >>>Betreff: RE: [Asp.net] DataGrid Item Template dynamisch erzeugen > >>> > >>> > >>>DataBind ist klar das ist es aber nicht was ich meinte sondern ein > >>>durch DB Eintr�ge ezeugtes DataGrid wurde erzeugt. > >>> > >>>Dieses nehme ich und will es erweitern und halt diese Template > >>>hinzuf�gen um eine Checkbox hinzuf�gen zu k�nnen. > >>> > >>>DataGrid mDataGrid =(DataGrid) Page.FindControl("dg_4576"); > >>> > >>> > >>> > >>> > >>> > >>>-----Original Message----- > >>>From: [EMAIL PROTECTED] > >>[mailto:[EMAIL PROTECTED]] > >>>On Behalf Of Sebastian Krampe > >>>Sent: Thursday, February 20, 2003 11:53 AM > >>>To: '[EMAIL PROTECTED]' > >>>Subject: AW: [Asp.net] DataGrid Item Template dynamisch erzeugen > >>> > >>> > >>> > >>>Versuchs mal mit einem > >>> mDataGrid.DataBind(); > >>>am Ende. > >>> > >>>Gru� > >>>Sebastian > >>> > >>>-----Urspr�ngliche Nachricht----- > >>>Von: Joerg Uth [mailto:[EMAIL PROTECTED]] > >>>Gesendet: Donnerstag, 20. Februar 2003 11:54 > >>>An: [EMAIL PROTECTED] > >>>Betreff: [Asp.net] DataGrid Item Template dynamisch erzeugen > >>> > >>> > >>>Hallo zusammen ich versuche zur Laufzeit einem DataGrid ein > >>>ItemTemplate hinzuzuf�gen um eine Checkbox-Spalte darzustellen. > >>> > >>><asp:templatecolumn> > >>> <itemtemplate> > >>> <asp:checkbox id="cb"></asp:checkbox> > >>> </itemtemplate> > >>></asp:templatecolumn> > >>> > >>>Meine Grundidee ist: > >>> > >>>TemplateColumn tc = new TemplateColumn(); > >>System.Web.UI.Control c = new > >>>System.Web.UI.Control(); CheckBox cb = new CheckBox(); cb.ID = > >>>"CheckBox"; c.Controls.Add(cb); > >>> > >>>ITemplate it; > >>>it.InstantiateIn(c); > >>>tc.ItemTemplate =(ITemplate) it; > >>> > >>>mDataGrid.Columns.Add(tc); > >>> > >>>Aber das Funktionier leider nicht. > >>> > >>>Hat einer von Euch eine Idee oder muss ich eine neue Class > >f�r dieses > >>>Template erzeugen in der Art TemplateBuilder() oder so: > >>> > >>>J�rg > >>> > >>>_______________________________________________ > >>>Asp.net mailing list > >>>[EMAIL PROTECTED] > >>http://www.glengamoi.com/mailman/listinfo/asp.n>et > >>> > >>> > >>>. > >> > >>>_______________________________________________ > >> > >>>Asp.net mailing list > >>>[EMAIL PROTECTED] > >>http://www.glengamoi.com/mailman/listinfo/asp.n>et > >>> > >> > >>>_______________________________________________ > >> > >>>Asp.net mailing list > >>>[EMAIL PROTECTED] > >>http://www.glengamoi.com/mailman/listinfo/asp.n>et > >>> > >> > >> > >>_______________________________________________ > >>Asp.net > >>mailing list > >>[EMAIL PROTECTED] > >http://www.glengamoi.com/mailman/listinfo/asp.n>et > >> > > > >>_______________________________________________ > > > >>Asp.net mailing list > >>[EMAIL PROTECTED] > >http://www.glengamoi.com/mailman/listinfo/asp.n>et > >> > > > > > >_______________________________________________ > >Asp.net > >mailing list > >[EMAIL PROTECTED] > >http://www.glengamoi.com/mailman/listinfo/asp.net > > > >_______________________________________________ > >Asp.net mailing list > >[EMAIL PROTECTED] > >http://www.glengamoi.com/mailman/listinfo/asp.net > > > > _______________________________________________ > Asp.net mailing list > [EMAIL PROTECTED] > http://www.glengamoi.com/mailman/listinfo/asp.net > > _______________________________________________ Asp.net mailing list [EMAIL PROTECTED] http://www.glengamoi.com/mailman/listinfo/asp.net _______________________________________________ Asp.net mailing list [EMAIL PROTECTED] http://www.glengamoi.com/mailman/listinfo/asp.net
