VS2010 en .NET 4.0 – Optional Parameters

Oke, VB kende deze functionaliteit al langer, C# straks vanaf versie 4 ook.


Je kent dat wel he. Je hebt een Class gedefinieerd met meerdere methoden. Soms zijn de parameters optioneel. Nu zouden we dan meerdere overrides van de methode maken. Op zich niets mis mee, maar levert uiteindelijk wel een beheer hel op. Wat als er een default waarde verandert, dan zul je dat waarschijnlijk op meer dan een plek moeten aanpassen.


Hieronder een aantal aanroepen van een methode waarvan een aantal parameters optioneel zijn. Oke, de optionele parameters moeten altijd aan het eind staan, maar dat is niet zo vreemd eigenlijk. Bij het aanroepen van de methode kun je kiezen voor een named parameter of volgorde.


optionalparam0


Uiteraard krijg je gewoon een compile error, als je de niet verplichte parameters ook niet meegeeft.


optionalparam2


Dit is de definitie van de methode.


optionalparam1


Zoals je ziet, heb ik constanten gebruikt voor de default waarde van de parameters. In eerste instantie wilde ik een lege string als default waarde opgeven. Ik dacht string.Empty te gebruiken, maar helaas wordt dat niet gepikt.


optionalparam3


Mijn test applicatie toonde dit dan uiteindelijk.


 optionalparam4


 


 


 


 


 


 


Mooie oplossing zorgt in elk geval voor schone code.

Windows 7 – Taskbar

Al een tijdje heb ik Windows 7 op mijn dual touch laptop draaien. Het hele dual touch gebeuren is Windows 7 is er mooi, maar over later wellicht meer.

Mooi aan Windows 7 is de Taskbar. Als je meerdere instanties van dezelfde applicatie open hebt, dan worden ze in Vista pas gegroepeerd als er geen ruimte meer op de Taskbar is. In Windows 7 vindt het groeperen altijd plaats. Zie je het subtiele verschil van het icoontje op de Taskbar? Het lijken er twee op elkaar.

 w70 w71

Wat ik nog mooier vind, dat het ook geldt voor meerdere tabjes binnen Internet Explorer.

w72

Waren het verschillende instanties van Internet Explorer, dan zie je het verschil op de Taskbar niet. Erg cool. Ook erg mooi, je kunt een applicatie of tab in Internet Explorer gewoon vanaf de preview sluiten. Als je over de preview gaat met de muis, dan zie op de achtergrond de echte versie. Alsje dan op het rode kruisje in de preview klikt, dan sluit je ook daadwerkelijk de instantie of tab.

 w73 w74

Ook vind ik de notification area naast het klokje beter. In Vista zie ik altijd net de icontjes die wel wil zien niet en degene die ik niet wil zien wel. Nu kun je dat customizen en zelf bepalen wat je wel of niet ziet.

 w7noti