février
2007
Quand on duplique une déclaration, on a l’erreur de suite en VB alors qu’il faut compiler pour l’avoir en C#. En revanche, les erreurs de duplication de déclaration en VB sont surprenantes dans le sens où sur une propriété ou sur un champ, ce n’est pas le même qui a l’erreur : sur la propriété, c’est le premier alors que sur le champ, c’est le second. En C#, c’est tout le temps le premier :
février
2007
Les extension methods permettent d’écrire o.MyMethod() à la place de MyClass.MyMethod(o) dans (le cas d’une méthode static). En VB, il existe un intermédiaire : o.MyMethod(o). En fait, on a accès aux méthodes statiques du type de o directement (le code IL est bien MyClass.MyMethod(o)). Sous VS 2005, on a un warning quand on fait des choses comme ça. En effet, autant cela peut être pratique, autant cela peut permettre d’écrire du code assez surprenant. Voici […]
février
2007
Bien que je continue de préférer le C#, je dois reconnaître que Vincent et Akop m’ont fait découvrir deux choses intéressantes en VB qui n’existent à priori pas en C# : Les handles : Private Sub Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click, Button2.Click DirectCast(sender, Button).Text = "ok" End Sub Dans ce cas et le click sur Button1 et le click sur Button2 affecteront « ok » au bouton cliqué. […]
février
2007
Contrairement à ce que dit msdn (http://msdn2.microsoft.com/fr-fr/library/system.enum.isdefined(VS.80).aspx), pour utiliser les méthodes static de la classe Enum, il ne faut pas faire « returnValue = Enum.IsDefined(enumType, value) », pour utiliser la méthode Isdefined, mais « [Enum].IsDefined(enumtype, value) ». Sur ce point Reflector aussi se plante. Heureusement ce n’est pas le cas de l’intellisence. J’ai envoyé un message pour le signaler.
février
2007
http://connect.microsoft.com/WindowsHomeServer
février
2007
Akop m’a fait rematqué quelque chose qui m’a énormément étonné : si vous cherchez DataBinding sur google, mon article est en première page. J’en suis le premier surpris !