Fix this up so it works exactly like its C counterpart
Fix this up so it works exactly like its C counterpart

svn path=/trunk/gtk-sharp/; revision=27468

sillsdev/gtk-sharp,akrisiun/gtk-sharp,Gankov/gtk-sharp,openmedicus/gtk-sharp,sillsdev/gtk-sharp,openmedicus/gtk-sharp,orion75/gtk-sharp,sillsdev/gtk-sharp,antoniusriha/gtk-sharp,antoniusriha/gtk-sharp,antoniusriha/gtk-sharp,Gankov/gtk-sharp,orion75/gtk-sharp,Gankov/gtk-sharp,akrisiun/gtk-sharp,sillsdev/gtk-sharp,openmedicus/gtk-sharp,antoniusriha/gtk-sharp,Gankov/gtk-sharp,antoniusriha/gtk-sharp,Gankov/gtk-sharp,akrisiun/gtk-sharp,akrisiun/gtk-sharp,openmedicus/gtk-sharp,openmedicus/gtk-sharp,orion75/gtk-sharp,sillsdev/gtk-sharp,akrisiun/gtk-sharp,orion75/gtk-sharp,openmedicus/gtk-sharp,orion75/gtk-sharp,Gankov/gtk-sharp,openmedicus/gtk-sharp