Weird stuff.
Ik ben hier wat aan het prutsen met C# (Winforms).
Ik heb een interface met daarin 1 method signature in gedefinieerd.
Ik wil nu een abstracte form maken, die die interface implementeert bv:
Geen probleem.
Echter, nu wil ik dus een form maken die inherited van die abstracte form. Als ik kies voor 'Add new item', en vervolgens voor inherited form, kan ik mijn abstracte form ten eerste al niet uit de 'inheritance picker' kiezen.
Als ik manueel de code verander om die form te laten overerven van m'n abstracte form, dan kan ik mijn form niet in de designer openen. Ik krijg dan een foutmelding ala:
Het vreemde is dat ik m'n abstracte form zelf wel in de designer kan bekijken, terwijl die eigenlijk echt wel abstract is.
Ik ben hier wat aan het prutsen met C# (Winforms).
Ik heb een interface met daarin 1 method signature in gedefinieerd.
Ik wil nu een abstracte form maken, die die interface implementeert bv:
code:
1
2
3
4
5
| public class MyForm : System.Windows.Forms.Form, IMyInterface
{
....
public abstract MyInterfaceMethod();
} |
Geen probleem.
Echter, nu wil ik dus een form maken die inherited van die abstracte form. Als ik kies voor 'Add new item', en vervolgens voor inherited form, kan ik mijn abstracte form ten eerste al niet uit de 'inheritance picker' kiezen.
Als ik manueel de code verander om die form te laten overerven van m'n abstracte form, dan kan ik mijn form niet in de designer openen. Ik krijg dan een foutmelding ala:
Hoezo? WTF? Dit is toch onzin? Die designer moet helemaal geen instantie maken van m'n abstracte form, hij moet een form inheriten van die form.The designer must create an instance of type MyForm but it cannot because it is abstract
Het vreemde is dat ik m'n abstracte form zelf wel in de designer kan bekijken, terwijl die eigenlijk echt wel abstract is.
https://fgheysels.github.io/