Hur gör man så att en User Control bara blir synlig under design-time? Det är i utvecklingen av kontrollen som jag vill sätta att den inte ska synnas, inte när jag använder den färdiga kontrollen. Jag fattar inte riktigt vad du menar. Jag vill få den som tex Timern är. Den är synlig i design-time när man har den i sitt projekt men osynlig i run-time. Ah... Gör så att du ärver ifrån klassen System.ComponentModel.Component alt. implementerar interfacet IComponent. Ärv inte ifrån något System.Windows.Forms.* Nu pratar du saker som jag inte förstår =) Hur gör jag det där med kod? Vb 6 hade inte något sådant, nej. <b>Vb 6 hade inte något sådant, nej.</b> Aja, har inget minne av något sådant i vb 6 iaf. men, men , minnet bedrar, var ju trots allt något år sedan jag hade det installerat senast :) Om jag ändrar till System.ComponentModel.Component så får jag en mängd fel i programmet. Jag har alltså valt att skapa en User Control och sen ändrat till System.ComponentModel.Component som du sa. UserControl-klassen ärver helt enkelt ifrån (via lite andra klasser) System.Windows.Forms.Control. En Control har alltid ett fönster, den har alltid en handle och de är gjorda för att synas. Om de inte ska synas men finnas med i designtime är det Component du ska ha. Control har för övrigt interfacet IComponent vilket också gör den till en Component. Hur får jag fram componenten under typ My components i Toolbox? Jag fick in den genom att först kompilera den till en dll och sen lägga den under Components. Är det rätt väg att gå?Synlig bara under design-time
ThomasSv:Synlig bara under design-time
ThomasSv: Synlig bara under design-time
Du vill inte att kontrollen sall synas i VS eller?Sv:Synlig bara under design-time
ThomasSv: Synlig bara under design-time
Sv:Synlig bara under design-time
I VB6 var det väl mycket lättare... satte man inte bara ShowAtRuntime = True/False eller nått sånt?
ThomasSv: Synlig bara under design-time
Du deklarerar din klass såhär:
public class apa inherits System.ComponentModel.Component
end class
Ev. att du måste lägga till en referens till System.ComponentModel till projektetSv:Synlig bara under design-time
Jo, InvisibleAtRuntime hette den visst.
<b>public class apa inherits System.ComponentModel.Component
end class</b>
Man kan bara ha en inherits per klass och jag har redan Inherits System.Windows.Forms.UserControl.
ThomasSv: Synlig bara under design-time
Och nej, du kan inte ärva ifrån någonting i System.Windows.Forms.* om du vill att den ska fungera som timern. Det du vill skapa är en component, ingen kontroll. Kontroller syns, komponenter syns inte.Sv:Synlig bara under design-time
Skulle jag ha valt att skapa en component från början på nått sätt? Hur gör jag det i så fall, ser inte att det finns nått sånt alternativ i VS.NET?
ThomasSv: Synlig bara under design-time
En Component är helt enkelt ett sätt att kunna smarta saker i designern för att kunna få tillgång till alla möjligheterna i designern.
Slutsats: Om det inte ska synas i runtime så ska det vara en komponent. Den får inte ärva ifrån någon Control. Den måste antingen ärva Component-klassen eller implementera IComponent-interfacet. Både Component och IComponent finns i System.ComponentModel.*Sv:Synlig bara under design-time
ThomasSv: Synlig bara under design-time
Thomas