Löste det med System.Delegate.. men det känns som om det borde finnas en enklare väg? ;)
Låter tråden ligga utan att Acceptera som slutgiltigt svar i hopp om förslag på en annan lösning. :)
7 svar · 422 visningar · startad av Palle
Hej,
Sidan default.aspx (modern) innehåller ett par UserControl´s..
Hur gör jag för att anropa en funktion som ligger i default.aspx, från en av mina UserControl´s?
Tyvärr använder vi inte CodeBehind i detta projeketet.. :l
Löste det med System.Delegate.. men det känns som om det borde finnas en enklare väg? ;)
Låter tråden ligga utan att Acceptera som slutgiltigt svar i hopp om förslag på en annan lösning. :)
(([i]NamnPaASPXSidansClass[/i])Page).[i]MinSub[/i]()
Palle skrev:
Löste det med System.Delegate.. men det känns som om det borde finnas en enklare väg? ;)
Nja, det borde det egentligen inte, för det blir ofta bökigt om man skapar beroenden som går att det hållet, och det är ingen vidare bra arkitektur. Självklart är det möjligt att genomföra, men det finns inga genvägar.
Josef skrev:
((NamnPaASPXSidansClass)Page).MinSub()
Precis, eller med VB...
ctype(Page,NamnPaASPXSidansClass).MinSub()
emission skrev:
Precis, eller med VB...
ctype(Page,NamnPaASPXSidansClass).MinSub()
Var ser jag NamnPaASPXSidansClass när det inte är CodeBehind?
Palle skrev:
Var ser jag NamnPaASPXSidansClass när det inte är CodeBehind?
Använd ClassName-attributet i siddirektivet, och ge klassen ett eget namn.
Om jag i min UserControl har en variabel, typ "title" eller liknande som hämtas från en databas och jag vill ge huvudsidan, dvs. .aspx sidan denna variabel - hur gör jag gå?
Jag har fixat
public string Title {
get {}; set {}
}
och så, så allt jag vill gör är att kunna lägga in min variabel i public title innan DataBind() utförs - någon som vet hur?
((NamnPaASPXSidansClass)Page).Title = localTitle;
?
emission skrev:
Använd ClassName-attributet i siddirektivet, och ge klassen ett eget namn.
Följande kod..
[b]ASPX-sida:[/b]
<%@ Page language="vb" codePage="65001" ClassName="foo" %>
..
[b]UserControl:[/b]
ctype(Page,foo).MinSub()
Ger följande felmeddelande..
Compiler Error Message: BC30002: Type 'foo' is not defined.