if button is disabled then it should be tracked by it's property/attribute like "if(Button.Disabled=true,dosomething())".
So using that properties we can do some operation and can make some function work.
In above case I can see button is disabled but I cant get any event on Disabled button.
Also there is need of image attribute with button:
Scenario where I needed image attribute:
I wanted place a button by which user can go to Home screen, So i wanted to display button which can have home icon and "Home" as a text.
So currently I used two control to achieve this 1. button and 2. Image control in front of button.
So its should be in way like Button can have image and text both property and that both can be used same time.
Its not good to use two control to show only one button and maintain all the functionality for both the control like I have to write function on "OnSelect" for both control to achieve "on click" event.