DevTrain Startseite Visual Studio 1 Magazin  
  
  
SUCHEN:  
ARTIKEL ONLINE: 525   

Kategorien
.NET
Datenbanken
Web
XML

Allgemein
Camp
Foren
Events
Persönliche Einstellungen
Registrieren
Prämien Shop
Kontakt
Impressum
Über DevTrain

Autoren



 

Forum: ASP.NET | Thema: Zugriff auf Custom Control | Von: G. Guest ( 21.10.2003 16:06)

Hallo,

ich habe eine normale Webforms-Seite, in welche ich eine DropDownList als Control einbinde. Im Code-Behind-File meiner Websorms-Seite möchte ich dann beim Klick auf den Button auf das selektierte Item meiner DropDownList zugreifen. Das funktioniert aber irgendwie nicht, da dort das Objekt nicht erkannt wird ("Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt")

Anbei der Code meiner Seiten. Vielleicht kann mir ja jemand helfen.

[b]test.aspx[/b]
[i]<%@ Page language="c#" Codebehind="test.aspx.cs" Inherits="Lizenzdialog.Test" %>
<%@ Register TagPrefix="tom" TagName="pnr_suche" Src="modules/pnr_suche.ascx" %>

<HTML>
<body>
<form id="Identify" method="post" runat="server">
<asp:Label id="Message" runat="server" />
<tom:pnr_suche runat="server" />
<asp:button id="btn_Show" onclick="Show" Runat="server" Text="Show"></asp:button>
</form>
</body>
</HTML>[/i]

[b]Die dazugehörige Code-Behind test.aspx.cs dazu:[/b]
[i]using System;
using System.Data;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Drawing;

namespace Lizenzdialog
{
public class Test : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Label Message;
protected System.Web.UI.WebControls.DropDownList pnr;
protected System.Web.UI.WebControls.Button btn_Show;

protected void Show(object sender, System.EventArgs e)
{
Message.Text = pnr.SelectedItem.Value.Trim();
}
}
}[/i]

[b]Nun das Custom Control pnr_suche.ascx:[/b]
[i]<%@ Control Language="c#" Codebehind="pnr_suche.ascx.cs" Inherits="Lizenzdialog.modules.pnr_suche"%>

<asp:DropDownList id="pnr" Runat="server"></asp:DropDownList>[/i]

[b]Und die dazugehörige Code-Behind pnr_suche.ascx.cs[/b]
[i]namespace Lizenzdialog.modules
{
using System;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;

public class pnr_suche : System.Web.UI.UserControl
{
protected System.Web.UI.WebControls.DropDownList pnr;

private void Page_Load(object sender, System.EventArgs e)
{
if(!Page.IsPostBack)
{
LizenzData _LizenzData = new LizenzData();

// einige Funktionen, um der DropDownList einen Dummy-Eintrag voranzustellen
DataSet ds_pnr = _LizenzData.GetPNR();
DataTable dt_pnr = new DataTable();
dt_pnr = ds_pnr.Tables["PNR"].Clone();
DataRow neue_zeile= null;
neue_zeile = dt_pnr.NewRow();
neue_zeile["PNR"] = "";
dt_pnr.Rows.Add(neue_zeile);

foreach(DataRow row in ds_pnr.Tables["PNR"].Rows)
{
dt_pnr.ImportRow(row);
}

pnr.DataSource = dt_pnr;
pnr.DataTextField = "PNR";
pnr.DataValueField = "PNR";
pnr.DataBind();
}
}
}
}[/i]



Vielen Dank im Voraus

Tom


Betreff Von Datum
Re: Zugriff auf Custom Control
Hallo Tom,<br><br>wie Du schon richtig geschrieben hast " Das funktioniert aber irgendwie nicht, da dort das Objekt nicht erkannt wird " im Codebehind muss Du das Control natürlich als Objektvariable...
Tobi Ulm 21.10.2003 16:30
Re: Zugriff auf Custom Control
Hallo Tobi,<br><br>erstmal danke für deine Hilfe. Ich weiß nicht, ob ich dich richtig verstanden habe, aber ich habe jetzt mal in der Code-Behind meiner aspx-Seite (test.aspx.cs) noch eine...
G. Guest 21.10.2003 17:56
Re: Zugriff auf Custom Control
Hi Tom,<br><br>Du solltest das UserControl nicht vom Typ UserControl deklarieren sondern vom Typ der Klasse des UserControls. z.B.: public class myUserControl : UserCOntrol{<br>//...<br>}<br>im COde...
Tobi Ulm 22.10.2003 09:05
Re: Zugriff auf Custom Control
Oh, jetzt hab ich gerade ein falschen Source eingegeben. Hier der richtige:<br>im COde behind:<br>proctected myUserControl pnrctrl = new myUserControl();<br>
Tobi Ulm 22.10.2003 09:06
Re: Zugriff auf Custom Control
Hallo Tobi,<br><br>nochmals vielen Dank für Deine Hilfe.<br>Aber ich steh gerade etwas auf dem Schlauch und bekomm's einfach nicht hin. :(<br><br>Könntest Du mir vielleicht den Gefallen tun und meine Sourcen...
G. Guest 22.10.2003 12:47
Re: Zugriff auf Custom Control
Yeppa,<br><br>mit Hilfe einer Kollegin ist das Problem gelöst.<br>Fall es jemanden interessiert, beschreibe ich mal meine Fehler und ide Lösung dazu<br><br>test.aspx:<br><br>Hier hat eine ID für meine Control...
G. Guest 23.10.2003 11:29
Re: Zugriff auf Custom Control
Hallo beisammen,<br><br>nun habe ich ein neues Problem: Ich möchte mein CustomControl in ein DataGrid einbinden. Im ItemTemplate funktioniert das auch und ich bekomme mein DropDown mit Einträgen...
G. Guest 24.10.2003 13:44

Antworten
Vorsicht bei der Eingabe: Die Zeichen ' oder -- sind nicht erlaubt!

 Betreff:
 Nachricht: Den Beitrag finden Sie nun unter: http://beta.devtrain.de/foren Die Benutzerdaten und Foreninhalte von beta.devtrain.de und www.devtrain.de sind die selben.
Sie können sich dort sogar per RSS über neue Inhalte informieren lassen.
Bei Problemen bitte direkt Mail an asp [AT] ppedv.de.

 Signatur:

  



Login
Username:


Passwort:






Passwort vergessen?

Building und Connecting Know-how

© Copyright 2003 ppedv AG