I have a button with caption A -> Z and picture sort ascending, when i click on it I need to change the caption to Z->A and the picture to sort descending. I know how to change the name but not the picture
I don't know how to change the picture on the button at runtime but if you create two buttons one with the A->Z and the other with the Z->A and make A->Z visible and Z->A invisible. You can code the A->Z button so that its visible property is set to false when it is clicked and the Z->A visible propery becomes true. I don't know of a way to program both a picture and text on a button but you can enlarge the button and superimpose a Textbox without loosing the button's fuctionality.
I would say like golde said, that making 2 buttons and 2 pictures just hiding one depending on which one they clicked. On form load they should only see one of them. (They should be on top of each other as well so to give the effect that the button changed when they clicked it).