I've been working a C# more and more and mostly liking it. However, I've run into something I either don't understand about C# or something I really don't like much. It appears that you can't rename an implemented method/property/event/etc. for an interface in C#. I.e. in VB you can do this:
'-- The interface specified a property called DataSourceUpdateMode,
' but it is implemented as BindingUpdateMode here in VB.
Public Property BindingUpdateMode() As DataSourceUpdateMode Implements IBusinessBindable.DataSourceUpdateMode
End Property
However, in C#, I can't figure out how to do this same sort of thing. It appears that the name of the property implementing an interface must match that interface's name.
Now, to IBusinessBindable. As you see above, IBusinessBindable has a property defined called DataSourceUpdateMode. It also has two designer specific methods defined within it: ResetBindingUpdateMode and ShouldSerializeBindingUpdateMode. However, it doesn't have a property called BindingUpdateMode. In all the VB code (like above), the DataSourceUpdateMode property is renamed in the implementation. It looks like I'll have to implement these two designer specific methods, which will do nothing, then implement two more for the actual method and then finally, I'll have to add the [DisplayName] attribute the to the control so it has a consistent name with all the other SF bindable controls out there.
This kinda sucks as I understand it now. What am I missing?