Sì, scusa, hai ragione.
Per quanto riguarda il file .cs, ho dichiarato l'ereditarietà in questo modo:
Per quanto invece riguarda l'ascx, io non ho scritto nulla, è così:codice:public partial class Customer_ToDo : ToDo { protected override void Page_Load(object sender, EventArgs e) { base.Page_Load(sender, e); } }
La pagina aspx che ospita il controllo invece, ha questo:codice:<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="Customer_ToDo.ascx.cs" Inherits="CRME_Web.Controls.Customer_ToDo" %>
codice:<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Prove.aspx.cs" Inherits="CRME_Web.Prove" %> <%@ Register assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" tagprefix="asp" %> <%@ Register src="Controls/Customer_ToDo.ascx" tagname="Customer_ToDo" tagprefix="uc1" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> </head> <body> <form id="form1" runat="server"> <uc1:Customer_ToDo ID="Customer_ToDo1" runat="server" /> </form> </body> </html>
Quando provo ad accedere ai controlli, scrivo cose come questa:
Quando provo a scrivere una cosa come questa, l'intellisense mi trova il controllo e me lo suggerisce. Quando però lo eseguo, mi dicecodice:{ protected override void Page_Load(object sender, EventArgs e) { base.Page_Load(sender, e); LabelProva.Text = "Riscritto"; //LabelProva è un label creato tramite asp.net nell'user control standard, e si prevede ereditato nell'user control customer, quello in unso in questo codice }
NullReferenceException: non è stata gestita dal codice utente.
Riferimento a un oggetto non impostato su un'istanza di oggetto

Rispondi quotando