Jag sitter och leker lite med ett Windows Forms project i Visual Studio 2005 som är skrivet i C#. Jag har dock märkt av en sak två gånger nu som gör mig lite konfunderad. Jag tror jag hittade problemet nu. Av nån anledning så har Visual Studio lagt min control som en private variabel inne i InitializeComponent() metoden på Designer.cs klassen. Jag tog bort deklarationen där och la den "utanför" som en privat och då kommer jag såklart åt den från min mainform klass.Problem med Windows Forms Designer i 2005
Grejjen är den att jag har en control på formuläret som heter MyTextBox. Dess properties och sådant ligger i MyForm.Designer.cs som är deklarerad som en Partial class av MyForm. Detta är ju som ni vet standard i Visual Studio 2005.
Det mystiska är att i Designer.cs filen så kan jag accessa controlen. Men i MyForm.cs så går det inte. Jag får inte upp intellisense och den klagar när jag kompilerar. Jag tycker som sagt detta är jävligt skumt med tanke på att det är en partial class och de ska ju i praktiken vara som att det är samma class. Och då borde man ju komma åt controlerna i princip oavsett.
Det är grymt svårt att göra en googling på detta oxå =/Sv: Problem med Windows Forms Designer i 2005
Varför gör den på detta viset? Skumt.