Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Använda CodeBehind i en UserControl

Postades av 2005-02-04 19:19:04 - Petter Andersson, i forum asp.net generellt, Tråden har 15 Kommentarer och lästs av 582 personer

Hur gör jag för att använda koden från min codebehind-fil i min Usercontrol? Jag trodde att det skulle gå att göra likadant som man gör i en vanlig sida. Men icke sa nicke ;)

/Petter


Svara

Sv: Använda CodeBehind i en UserControl

Postades av 2005-02-04 20:43:03 - Fredrik Edström

Vad är det som inte fungerar för dig?


Svara

Sv:Använda CodeBehind i en UserControl

Postades av 2005-02-04 20:49:37 - Petter Andersson

det står:
<code>
'SidKod' is not allowed here because it does not extend class "System.Web.UI.UserControl"
</code>


Svara

Sv: Använda CodeBehind i en UserControl

Postades av 2005-02-04 21:04:23 - Mikael Åhlén

Visa gärna hela code-behind koden,

Ex. på hur det ska se ut när det ska funka i en User Control.

using namnrymnd;
...

public class minuc : System.Web.UI.UserControl
{
          // ex. Page_Load
}


Det är alltså <b>System.Web.UI.UserControl</b> som gör så det funkar.

I ett Webb formulär blir det istället <b>System.Web.UI.Page</b>

/m


Svara

Sv: Använda CodeBehind i en UserControl

Postades av 2005-02-04 21:06:08 - Fredrik Edström

Nu är jag inte riktigt med här. Koden för din aspx sida har du ju i en codebehind fil med samma namn som aspx filen fast med cs alt vb som filändelse. Koden för din userkontrol har en egen codebehind fil. Kontrollen kan du betrakta som en sida i sidan. Alltså de knappar labels, etc, etc som du har i din usercontrol programmerar du i codebehind för usercontrolen.


Svara

Sv:Använda CodeBehind i en UserControl

Postades av 2005-02-05 09:34:44 - Petter Andersson

Det där med System.Web.UI.UserControl hade jag missat. men det fungerar inte ändå...
Detta är koden. Kanske inte den syggaste men fungerar ibland ;)

Imports System
Imports system.web.UI.UserControl
Imports system.data
Imports system.data.oledb



Public Class controls
    Protected WithEvents BRep As repeater
    Public Sub LoadNews()
        Dim con As New oledbconnection("provider=microsoft.jet.oledb.4.0; Data Source=db\minBas.mdb;Persist security info=false;")
        Dim strSQL As String = "SELECT * FROM Nyheter"
        Dim Command As New oledbCommand(strSQL, con)
        Dim Reader As oledbdatareader

        con.open()
        reader = command.executereader()
        BRep.datasource = reader
        BRep.databind()
        con.close()
        reader.close()
        command.dispose()
        con.close()
    End Sub
End Class


/Petter


Svara

Sv: Använda CodeBehind i en UserControl

Postades av 2005-02-05 11:45:40 - Mikael Åhlén

Visa gärna i ascx-filen också.

/m


Svara

Sv:Använda CodeBehind i en UserControl

Postades av 2005-02-05 12:12:08 - Petter Andersson

Det är såhär jag försökte att göra men det fungerar inte :(

<%@ Control Language="VB" Src="Controlscb.vb" Inherits="Controls" Debug="true" %>
<%LoadNews()%>
<asp:repeater id="BRep" runat="server">
    <itemtemplate>
        <%#databinder.eval(container.dataitem, "rubrik")%> 
    </itemtemplate>
</asp:repeater>


Svara

Sv: Använda CodeBehind i en UserControl

Postades av 2005-02-05 12:41:08 - Mikael Åhlén

Om du testar detta, dock i C#...

Code-behind.

namespace blog
{
	using System;
	using System.Data;
	using System.Drawing;
	using System.Web;
	using System.Web.UI.WebControls;
	using System.Web.UI.HtmlControls;

	/// <summary>
	///		Summary description for WebUserControl1.
	/// </summary>
	public class WebUserControl1 : System.Web.UI.UserControl
	{

		private void Page_Load(object sender, System.EventArgs e)
		{
			// Put user code to initialize the page here
		}

		#region Web Form Designer generated code
		override protected void OnInit(EventArgs e)
		{
			//
			// CODEGEN: This call is required by the ASP.NET Web Form Designer.
			//
			InitializeComponent();
			base.OnInit(e);
		}
		
		/// <summary>
		///		Required method for Designer support - do not modify
		///		the contents of this method with the code editor.
		/// </summary>
		private void InitializeComponent()
		{
			this.Load += new System.EventHandler(this.Page_Load);
		}
		#endregion
	}
}



ascx.
<%@ Control Language="c#" AutoEventWireup="false" Codebehind="WebUserControl1.ascx.cs" Inherits="blog.WebUserControl1" TargetSchema="http://schemas.microsoft.com/intellisense/ie5"%>
din text...


skapade filerna i VS.net och de ska funka, jämnför med dina filer så kanske du ser vad som har gått snätt.

/m


Svara

Sv:Använda CodeBehind i en UserControl

Postades av 2005-02-05 13:05:43 - Petter Andersson

Jag har lite svårt att förstå c# kod. Jag satte in ett namespace men det blev ingen skillnad.
Vad gör #region Web Form Designer generated code?
Har den nåt att göra med det jag håller på med, eller är det bara i c#?
Det skulle vara om man måste ha public class WebUserControl1 : System.Web.UI.UserControl.
Men om jag gör så blir det declaration expected. Antar att det ska inte ska vara så i vb.net.

/Petter


Svara

Sv: Använda CodeBehind i en UserControl

Postades av 2005-02-05 13:21:29 - Mikael Åhlén

Ok, skriver VB.net kod istället då.

Imports System
Imports System.Data
Imports System.Drawing
Imports System.Web
Imports System.Web.UI.WebControls
Imports System.Web.UI.HtmlControls

Public Class WebUserControl1 : System.Web.UI.UserControl
          Public Sub Page_Load()
                    ' Något här
          End Sub

          ' Kanske behövs det övriga, tex. som görs så att Page_Load körs.
End Class


<%@ Control Language="VB" AutoEventWireup="false" Codebehind="WebUserControl1.ascx.vb" Inherits="WebUserControl1" TargetSchema="http://schemas.microsoft.com/intellisense/ie5"%>


/m


Svara

Sv:Använda CodeBehind i en UserControl

Postades av 2005-02-05 15:43:50 - Petter Andersson

Om jag skriver: Public Class WebUserControl1 : System.Web.UI.UserControl så kommer det bara upp declaration expected. Det kanske är nåt i.o.m att jag använder webmatrix och kan inte använda iis eftersom jag har xp home. Men jag tycker inte att det skulle vara det. Måste codebehind filen heta news.ascx.vb om UserControllen heter news eller kan den heta vad som helst??
Hoppas någon kan lösa detta åt mig.

//Petter


Svara

Sv: Använda CodeBehind i en UserControl

Postades av 2005-02-08 15:12:45 - Ronny Thörnvall

Det som stod i exemplet tidigare:

<code>
Public Class WebUserControl1 : System.Web.UI.UserControl
</code>
Är C# kod som bara visar att klassen WebUserControl1 ärver av UserControl, i VB.Net skriver du istället:

<code>
Public Class WebUserControl1
Inherits System.Web.UI.UserControl
</code>

Har jag förstått rätt att du vill ha en UserControl som skall visas på en aspx-sida, men att du inte får koden i kontrollens code-behind-sida att inte fungera?! Du har ju två separata Code Behind-sidor, en för kontrollen, en för själva webbsidan. Kod för vad som skall ske i kontrollen lägger du i den code behind-sidan, och sedan "drar du bara in" kontrollen på den aspx-sidan som skall använda kontrollen. Vill du sedan anropa en del interna funktioner i kontrollen från huvudsidan så får du deklarera dem som publika i kontrollens Code Behind.

Ursäkta, har inte följt tråden från början - skall läsa igenom - men hoppas detta hjälper i alla fall! :-)

mvh Ronny


Svara

Sv:Använda CodeBehind i en UserControl

Postades av 2005-02-08 15:58:50 - Petter Andersson

Det stämmer att det var så jag ville ha det.
Jag löste det på det sättet i helgen efter lite nogrannare sökningar på olika forum. Så nu fungerar det som det ska med kontrollen iallafall.

Men det har nu kommit upp ett litet problem med min inloggning som ni kanske vet hur jag ska göra.
Jag får bara upp: Object reference not set to an instance of an object.
System.NullReferenceException: Object reference not set to an instance of an object.
sen säger han att jag inte har debug läget på men det har jag.

/petter


Svara

Sv: Använda CodeBehind i en UserControl

Postades av 2005-02-08 16:18:04 - Ronny Thörnvall

Jag behöver mer information om jag skall kunna sätta mig in i problemet...

Hör detta ihop med användarkontroll-problemet? Du kan ju annars stänga denna tråd och skriva frågan i en ny tråd! :-)

Hur gör du inloggningskontrollen? Det låter på felmeddelandena som att du använder ett externt objekt för att göra kontrollen?! Är det ett objekt som du utvecklat själv? Ligger objektkoden med i samma solution? Är det inställt i DEBUG-läge med? Har du satt referenser till objektet OCH skapat upp en ny instans med New, etc, etc...

Många frågor! :-)


Svara

Sv:Använda CodeBehind i en UserControl

Postades av 2005-02-08 16:25:48 - Petter Andersson

Nej det har inte med användarkontrollproblemet att göra så jag startar upp en ny tråd med lite mer information i.

//Petter


Svara

Nyligen

  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo
  • 14:25 Tips på verktyg för att skapa QR-k
  • 14:23 Tips på verktyg för att skapa QR-k
  • 20:52 Fungerer innskuddsbonuser egentlig

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 602
27 953
271 705
5 140
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies