我正在寻找一个按钮控件来显示AutoSize它的图像.普通按钮控件不会这样做.我正在使用C#.Net 2.0.
例如,我有一个200 x 50px的Button和一个800 x 100px的图像.我想调整图像的大小,使其在按钮文本附近向左一点.随着PictureBox我可以做到这一点.但是,当我躺在一个PictureBox在Button它的非常难看,因为你不能点击那里.
你可以这样做:
button.Image = Image.FromFile(path);
button.AutoSize = true;
Run Code Online (Sandbox Code Playgroud)
例如:或者,您可以创建一个新的Button类型来改变图像的大小:
public class AutoSizeButton : Button
{
public new Image Image
{
get { return base.Image; }
set
{
Image newImage = new Bitmap(Width, Height);
using (Graphics g = Graphics.FromImage(newImage))
{
g.DrawImage(value, 0, 0, Width, Height);
}
base.Image = newImage;
}
}
}
Run Code Online (Sandbox Code Playgroud)
测试:
AutoSizeButton button = new AutoSizeButton();
button.Location = new Point(27, 52);
button.Name = "button";
button.Size = new Size(75, 23);
button.Text = "Test";
button.UseVisualStyleBackColor = true;
button.Image = Image.FromFile(path);
Controls.Add(button);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
19640 次 |
| 最近记录: |