Originally Posted by
Fonzie
Ik probeer in C# een methode te maken waarbij ik in mijn programma de buttonstatus kan lezen en zetten.
Dus als de gebruiker in editmode is dan moet de knop "opslaan" en "annuleren enabled zijn en de knop "nieuw" niet.
Ik heb het idee dat onderstaande code een stuk eenvoudiger kan
Gebruik een enum om je edit-mode bij te houden?
C# Code:
* public enum EditMode
{
InEdit, InEditAndChanged, Empty
}
en dan b.v.:
C# Code:
* private EditMode _editMode;
public EditMode EditMode
{
get => _editMode;
set
{
_editMode = value;
switch (value)
{
case EditMode.InEdit:
// ...
break;
case EditMode.InEditAndChanged:
// ...
break;
case EditMode.Empty:
// ...
break;
default:
// ...
break;
}
}
}
In de veronderstelling dat de New button enkel mag geactiveerd zijn bij Empty en de Save button enkel bij InEditAndChanged kan het ook zo:
C# Code:
* private EditMode _editMode;
public EditMode EditMode
{
get => _editMode;
set
{
_editMode = value;
buttonNew.Enabled = value == EditMode.Empty;
buttonSave.Enabled = value == EditMode.InEditAndChanged;
}
}
Originally Posted by
Fonzie
los daarvan krijg ik in mijn switch>case de opmerking "A constant value is expected"
In C# moeten switch variabelen statisch zijn (compiler moet de waarden kennen @ compile).
Bookmarks