Faire une image d'arrière-plan à l'échelle avec la taille du bouton

Je suis d'essayer d'ajouter des images d'arrière-plan de quelques boutons de ma Victoire des Formulaires de demande. Les trois images sont de tailles différentes (c'est à dire des dimensions en pixels ne correspondent pas, l'un est 128x128 pixels et un autre est 256x256). J'ai besoin de l'boutons est identique à la taille (sinon, le GUI est horriblement asymétrique). Sans modifier les fichiers d'image, comment puis-je obtenir les images pour s'adapter à la taille du bouton?

J'ai essayé de créer ma propre classe, et l'ajout d'un gestionnaire d'événement pour le bouton de redimensionnement de l'événement, mais cela ne semble pas fonctionner. Mon code:

class CustomButton : Button {

        internal void CustomButton_Resize( object sender, EventArgs e ) {
            if ( this.BackgroundImage == null ) {
                return;
            }

            var pic = new Bitmap( this.BackgroundImage, this.Width, this.Height );
            this.BackgroundImage = pic;
        }
    }

et dans la forme:

this.buttonOne.Resize += new System.EventHandler(this.buttonOne.CustomButton_Resize);

Oublié de mentionner, le code ci-dessus ne permet pas de redimensionner les images à tous. Les boutons doivent encore avoir des tailles différentes pour afficher les images complètement.

  • J'avais essayé d'écrire la même chose de manière concise, mais ne pouvait pas réussir. Au moins, veuillez améliorer le look de code 🙂
InformationsquelleAutor Travis | 2012-11-13