So wie es aussieht soll das ein UserControl also eine .ascx sein, kann es sein dass die Seite in der du das Control l�dst den Fehler verursacht??
Sonst kann ich auf die schnelle nix sehen. Sorry. -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of A-Schubert Sent: Thursday, February 06, 2003 3:37 PM To: [EMAIL PROTECTED] Subject: AW: [Asp.net] DataGrid Probleme Aspx.cs Datei namespace Wlan_Portal.admincontrols { using System; using System.Data; using System.Data.SqlClient; using System.Drawing; using System.Web; using System.Web.UI.WebControls; using System.Web.UI.HtmlControls; using Wlan_Portal.classes; /// <summary> /// Zusammendfassende Beschreibung f�r adm_Voucherkategorie. /// </summary> public abstract class adm_Voucherkategorie : System.Web.UI.UserControl { protected System.Web.UI.WebControls.Button btnSpeichern; protected System.Web.UI.WebControls.Button btnReset; protected System.Web.UI.WebControls.TextBox txtbVoucherName; protected System.Web.UI.WebControls.TextBox txtbMenge; protected System.Web.UI.WebControls.TextBox txtbPreis; protected System.Web.UI.WebControls.DropDownList ddlVoucherEinheit; protected System.Web.UI.WebControls.DropDownList ddlWaehrung; protected System.Web.UI.WebControls.Label lblFehlerVoucherModul; protected System.Web.UI.WebControls.Label lblValidationVN; protected System.Web.UI.WebControls.Label lblValidationVA; protected System.Web.UI.WebControls.Label lblValidationVP; protected int x; //DataGrid protected System.Web.UI.WebControls.Label lblFehlerMeldung; protected System.Web.UI.WebControls.DataGrid ddgVoucherTypenUebersicht; protected System.Web.UI.WebControls.DropDownList ddlAtribute; protected System.Web.UI.WebControls.TextBox txtbKriterium; protected System.Web.UI.WebControls.Button btnSuche; protected string Sortatribut = ""; //SortierAtribut f�r die Sortierung des DataGrids protected int Counter=0; //Anzahl der Datens�tze die von der Abfrage betroffen sind private void Page_Load(object sender, System.EventArgs e) { //DataSource nur einmal binden if(!Page.IsPostBack) { //Source �ber den Aufruf der Methode f�llen ddgVoucherTypenUebersicht.DataSource = GetDataSource(this.Sortatribut,"",""); //DataSet f�r das DataGrid binden ddgVoucherTypenUebersicht.DataBind(); //Datenbankklasse einbinden �ffnen abfragen schlie�en DatabaseConnection objDB = new DatabaseConnection(); if(!objDB.DatabaseOpen(Application["Server"].ToString(),Application["DBName" ].ToString(),Application["DBUser"].ToString(),Application["DBPasswort"].ToSt ring())) { lblFehlerVoucherModul.Text = "Fehler beim �ffnen der Datenbankverbindung! Vorgang abgebrochen."; } //Alle VoucherEinheiten auslesen SqlDataReader myDataReader = objDB.SelectQuery("Select * >From tblRateUnit ORDER BY RateUnitID"); //�berpr�fen ob ReaderObjekt gef�llt ist if(myDataReader == null) { lblFehlerVoucherModul.Text = "Datenbankabfrage verlief nicht erfolgreich!"; } else { //Einheiten an die DropdownListe binden while(myDataReader.Read()) { //DropdownListe f�llen ListItem myItem = new ListItem(); myItem.Value = myDataReader["RateUnitID"].ToString(); myItem.Text = myDataReader["RateUnit"].ToString(); ddlVoucherEinheit.Items.Add(myItem); } } myDataReader.Close(); //Alle W�hrungen auslesen myDataReader = objDB.SelectQuery("SELECT * FROM tblCurrency ORDER BY CurrencyID"); //�berpr�fen ob ReaderObjekt gef�llt ist if(myDataReader == null) { lblFehlerVoucherModul.Text = "Datenbankabfrage verlief nicht erfolgreich!"; } else { //W�hrungen an die DropdownListe binden while(myDataReader.Read()) { //DropdownListe f�llen ListItem myItem = new ListItem(); myItem.Value = myDataReader["CurrencyID"].ToString(); myItem.Text = myDataReader["Currency"].ToString(); ddlWaehrung.Items.Add(myItem); } } //ReaderObjekt zerst�ren myDataReader.Close(); if(!objDB.DatabaseClose()) { lblFehlerVoucherModul.Text = "Fehler beim Schlie�en der Datenbankverbindung! Vorgang abgebrochen."; } } } #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); } /// 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.btnSuche.Click += new System.EventHandler(this.btnSuche_Click); this.btnSpeichern.Click += new System.EventHandler(this.btnSpeichern_Click); this.btnReset.Click += new System.EventHandler(this.btnReset_Click); this.Load += new System.EventHandler(this.Page_Load); } #endregion private void btnReset_Click(object sender, System.EventArgs e) { //alle Felder resetten txtbVoucherName.Text = ""; txtbMenge.Text=""; txtbPreis.Text=""; } private void btnSpeichern_Click(object sender, System.EventArgs e) { //Validierung der Felder durchf�hren, da kein Validation Controll benutzt werden kann if(txtbVoucherName.Text=="") { lblValidationVN.Visible = true; lblFehlerVoucherModul.Text = "Sie haben vergessen einen Vouchernamen einzugeben."; return; } if(txtbMenge.Text=="") { lblValidationVA.Visible = true; lblFehlerVoucherModul.Text = "Sie haben vergessen die Voucher Menge einzugeben."; return; } if(txtbPreis.Text=="") { lblValidationVP.Visible = true; lblFehlerVoucherModul.Text = "Sie haben vergessen einen Voucher Preis einzugeben."; return; } //Datenbankklasse einbinden �ffnen einf�gen schlie�en DatabaseConnection objDB = new DatabaseConnection(); if(!objDB.DatabaseOpen(Application["Server"].ToString(),Application["DBName" ].ToString(),Application["DBUser"].ToString(),Application["DBPasswort"].ToSt ring())) { lblFehlerVoucherModul.Text = "Fehler beim �ffnen der Datenbankverbindung! Vorgang abgebrochen."; } //Neuen Datensatz speichern x = objDB.UpdateDeleteQuery("INSERT INTO tblVoucher (VoucherName,VoucherAmount,VoucherPrice,CurrencyID,RateUnitID) Values('" + txtbVoucherName.Text.ToString() + "'," + Convert.ToInt32(txtbMenge.Text) + "," + Convert.ToDouble(txtbPreis.Text) + "," + ddlWaehrung.SelectedItem.Value + "," + ddlVoucherEinheit.SelectedItem.Value + ")"); if(x < 1) { lblFehlerVoucherModul.Text = "Die Speicherung der Daten verlief nicht erfolgreich!"; } else { //bei erfolgreicher Speicherung Seite aktualisieren Response.Redirect("default.aspx"); } } public object GetDataSource(string Sortatribut,string SelectAttribut, string SelectValue) { //Datenbankklasse einbinden �ffnen abfragen schlie�en DatabaseConnection objDB = new DatabaseConnection(); if(!objDB.DatabaseOpen(Application["Server"].ToString(),Application["DBName" ].ToString(),Application["DBUser"].ToString(),Application["DBPasswort"].ToSt ring())) { lblFehlerMeldung.Text = "Fehler beim �ffnen der Datenbankverbindung! Vorgang abgebrochen."; } //Dataset erzeugen da das Paging des DataGrids nicht mit DataReader arbeiten kann //DataSet wird �ber Database Klasse erzeugt DataSet myDataSet = new DataSet(); if(Sortatribut == "") { if(SelectAttribut == "" && SelectValue == "") { myDataSet = (DataSet) objDB.GetDataSet_Select("SELECT * FROM qry_Voucheruebersicht ORDER BY VoucherID"); } else { if(SelectAttribut == "VoucherID" || SelectAttribut =="VoucherAmount" || SelectAttribut == "VoucherPrice") { myDataSet = (DataSet) objDB.GetDataSet_Select("SELECT * FROM qry_Voucheruebersicht WHERE " + SelectAttribut + " = " + SelectValue); } else { myDataSet = (DataSet) objDB.GetDataSet_Select("SELECT * FROM qry_Voucheruebersicht WHERE " + SelectAttribut + " = '" + SelectValue + "'"); } } } else { myDataSet = (DataSet) objDB.GetDataSet_Select("SELECT * FROM qry_Voucheruebersicht ORDER BY " + Sortatribut.ToString()); } if(myDataSet == null) { lblFehlerMeldung.Text = "Fehler bei der Erzeugung des DataSets"; } //Anzahl der betroffenden Datens�tze ermitteln this.Counter = (int) myDataSet.Tables[0].Rows.Count; if(!objDB.DatabaseClose()) { lblFehlerMeldung.Text = "Fehler beim Schlie�en der Datenbankverbindung! Vorgang abgebrochen."; } return(myDataSet); } public void DataGrid_IndexChange(object sender, DataGridPageChangedEventArgs e) { //diese Methode bindet die Source erneut an das DataGrid mit den ver�nderten Inhalt ddgVoucherTypenUebersicht.CurrentPageIndex = e.NewPageIndex; ddgVoucherTypenUebersicht.DataSource = GetDataSource(this.Sortatribut,"",""); ddgVoucherTypenUebersicht.DataBind(); } public void DataGrid_Sort(object sender,DataGridSortCommandEventArgs e) { //diese Methode bindet die Source erneut an das DataGrid mit den ver�nderten Inhalt this.Sortatribut = e.SortExpression.ToString(); ddgVoucherTypenUebersicht.DataSource = GetDataSource(this.Sortatribut,"",""); ddgVoucherTypenUebersicht.DataBind(); } public void Count_Records(object sender,DataGridItemEventArgs e) { if(e.Item.ItemType == ListItemType.Footer) { e.Item.Cells[0].Text= "Anzahl"; e.Item.Cells[1].Text = this.Counter.ToString(); e.Item.Cells[2].Text ="Datens�tze"; } if(e.Item.ItemType == ListItemType.Item) { Button myButton = (Button) e.Item.Cells[6].Controls[0]; myButton.CssClass = "ButtonFormular"; myButton.CausesValidation="False"; } if(e.Item.ItemType == ListItemType.Pager) { e.Item.Cells[0].Text = "Seite: "; } } public void DataGrid_Edit(object sender, DataGridCommandEventArgs e) { ddgVoucherTypenUebersicht.EditItemIndex = e.Item.ItemIndex; //Noch einmal die Datenquelle an das Datagrid binden, damit die Textboxen gef�llt werden ddgVoucherTypenUebersicht.DataSource = GetDataSource(this.Sortatribut,"",""); ddgVoucherTypenUebersicht.DataBind(); } public void DataGrid_Cancel(object sender, DataGridCommandEventArgs e) { ddgVoucherTypenUebersicht.EditItemIndex = -1; //Noch einmal die Datenquelle an das Datagrid binden --> Refresh ddgVoucherTypenUebersicht.DataSource = GetDataSource(this.Sortatribut,"",""); ddgVoucherTypenUebersicht.DataBind(); } public void DataGrid_Update(object sender, DataGridCommandEventArgs e) { //Alle Variablen auslesen die ge�ndert sein k�nnten //VoucherID int VoucherID = Convert.ToInt32(e.Item.Cells[0].Text); //VoucherName TextBox myTextBox = (TextBox) e.Item.Cells[1].Controls[0]; string VoucherName = myTextBox.Text.ToString(); //VoucherGr��e TextBox myTextBox2 = (TextBox) e.Item.Cells[2].Controls[0]; int VoucherAmount = Convert.ToInt32(myTextBox2.Text); //VoucherPrice TextBox myTextBox3 = (TextBox) e.Item.Cells[4].Controls[0]; double VoucherPrice = Convert.ToDouble(myTextBox3.Text); //Eintrag in der DB updaten //Datenbankklasse einbinden �ffnen abfragen schlie�en DatabaseConnection objDB = new DatabaseConnection(); if(!objDB.DatabaseOpen(Application["Server"].ToString(),Application["DBName" ].ToString(),Application["DBUser"].ToString(),Application["DBPasswort"].ToSt ring())) { lblFehlerVoucherModul.Text = "Fehler beim �ffnen der Datenbankverbindung! Vorgang abgebrochen."; } //Eintrag updaten string SQL = "UPDATE tblVoucher SET VoucherName = '" + VoucherName + "', VoucherAmount= " + VoucherAmount + ", VoucherPrice=" + VoucherPrice + " WHERE VoucherID=" + VoucherID; if(objDB.UpdateDeleteQuery(SQL)== 0) { lblFehlerMeldung.Text = "Der Datensatz konnte nicht gespeichert werden."; } if(!objDB.DatabaseClose()) { lblFehlerVoucherModul.Text = "Fehler beim Schlie�en der Datenbankverbindung! Vorgang abgebrochen."; } //DataGrid aktualisieren ddgVoucherTypenUebersicht.EditItemIndex = -1; //Noch einmal die Datenquelle an das Datagrid binden --> Refresh ddgVoucherTypenUebersicht.DataSource = GetDataSource(this.Sortatribut,"",""); ddgVoucherTypenUebersicht.DataBind(); } private void btnSuche_Click(object sender, System.EventArgs e) { //Wenn kein Kriterium angegeben wurde if(txtbKriterium.Text == "") { lblFehlerMeldung.Text = "Sie haben vergessen ein Suchkriterium anzugeben."; return; } //PageIndex neusetzen ddgVoucherTypenUebersicht.CurrentPageIndex = 0; //DataSource neubilden mit selektierten Werten von der Suche ddgVoucherTypenUebersicht.DataSource = GetDataSource(this.Sortatribut,ddlAtribute.SelectedItem.Value.ToString(),txt bKriterium.Text.ToString()); ddgVoucherTypenUebersicht.DataBind(); } } } -----Urspr�ngliche Nachricht----- Von: Joerg Uth [mailto:[EMAIL PROTECTED]] Gesendet: Donnerstag, 6. Februar 2003 15:38 An: [EMAIL PROTECTED] Betreff: RE: [Asp.net] DataGrid Probleme wenigstens ein paar ausz�ge, stellt sich die Frage erzeugst du das DataGrid statisch in der .aspx oder dynamisch in der aspx.cs? J�rg -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of A-Schubert Sent: Thursday, February 06, 2003 3:08 PM To: [EMAIL PROTECTED] Subject: AW: [Asp.net] DataGrid Probleme Soll ich den ganzen Quelltext senden? Ich kann ja gerne meinen Quelltext als Anhang mitsenden, aber das ist glaube ich verboten. -----Urspr�ngliche Nachricht----- Von: Joerg Uth [mailto:[EMAIL PROTECTED]] Gesendet: Donnerstag, 6. Februar 2003 15:08 An: [EMAIL PROTECTED] Betreff: RE: [Asp.net] DataGrid Probleme Ohne Code kann man hier nur raten. J�rg -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of A-Schubert Sent: Thursday, February 06, 2003 2:56 PM To: [EMAIL PROTECTED] Subject: AW: [Asp.net] DataGrid Probleme Der Ordner und das Scriptfile sind vorhanden. Daran kann es also nicht liegen. ;( Trotzdem Danke -----Urspr�ngliche Nachricht----- Von: Joerg Uth [mailto:[EMAIL PROTECTED]] Gesendet: Donnerstag, 6. Februar 2003 14:58 An: [EMAIL PROTECTED] Betreff: RE: [Asp.net] DataGrid Probleme Sieh mal nach ob dein RootWeb einen Ordner aspnet_client hat. wwwroot\aspnet_client\system_web\1_0_3705_288 Dort liegen n�mlich die ben�tigten js, wenn nicht dann kommt daher der Fehler. J�rg -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of A-Schubert Sent: Thursday, February 06, 2003 2:42 PM To: [EMAIL PROTECTED] Subject: [Asp.net] DataGrid Probleme Folgendes Problem: Ich habe in meinen DataGrid eine EditCommandColumn. Als Button Typ habe ich Linkbutton genommen. Soweit klappt alles und alle Methoden werden auch bei den verschiedenen LinkButtons korrekt aufgerufen, au�er bei dem Update Button. Da passiert gar nichts, weil sofort ein JavaScript Fehler auftritt wenn ich ihn dr�cke. In der Meldung steht irgendwas von Page_Validators ist undefiniert. Das muss also irgendwas damit zu tun haben, dass das DataGrid automatisch eine Validation durchf�hrt wenn man updatet. Was kann ich da machen? Au�erdem w�rde ich gerne wissen wie man diesen Buttons, wenn man Pushbutton w�hlt ein Stylesheet geben kann? Vielen Dank Mit freundlichen Gr��en Andr� Schubert T-Systems Nova GmbH Entwicklungszentrum Berlin Hausanschrift: Wittestr. 30H 13509 Berlin Telefon: (0 30) 4 35 77-7881 E-Mail: [EMAIL PROTECTED] Internet: http://www.t-systems.com _______________________________________________ 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 _______________________________________________ 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
