Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 复选框按钮上的图标_C#_Winforms_Button_Checkbox - Fatal编程技术网

C# 复选框按钮上的图标

C# 复选框按钮上的图标,c#,winforms,button,checkbox,C#,Winforms,Button,Checkbox,我想在我的按钮上添加图标符号。它是复选框,但外观与Visual Studio 2010中的按钮相似,c。那么有人能告诉我怎么做吗???设置图像属性或使用类似此按钮的代码。Image=new BitmapClick.jpg 设置图像属性或通过类似此按钮的代码进行设置。Image=new BitmapClick.jpg 选中复选框的图像属性。选择本地资源>导入并导航到图标文件。默认情况下,图标文件将不显示,因此您需要选择所有文件*.filter 如果要从代码中设置图标,可以通过以下方式进行设置: c

我想在我的按钮上添加图标符号。它是复选框,但外观与Visual Studio 2010中的按钮相似,c。那么有人能告诉我怎么做吗???

设置图像属性或使用类似此按钮的代码。Image=new BitmapClick.jpg

设置图像属性或通过类似此按钮的代码进行设置。Image=new BitmapClick.jpg

选中复选框的图像属性。选择本地资源>导入并导航到图标文件。默认情况下,图标文件将不显示,因此您需要选择所有文件*.filter

如果要从代码中设置图标,可以通过以下方式进行设置:

checkBox.Image = new Icon(pathToIconFile).ToBitmap();
更新:无法缩放或拉伸图像,这是通过图像属性指定的。在这种情况下,您需要改用BackgroundImage属性:

checkBox.BackgroundImage = new Icon(pathToIconFile).ToBitmap();
checkBox.BackgroundImageLayout = ImageLayout.Stretch;
您也可以通过编程方式调整图像大小,或者在OnPaint方法中手动绘制图像,但这需要更多的努力

更新:调整图像大小

public static Bitmap ResizeImage(Image image, Size size)
{            
    Bitmap result = new Bitmap(size.Width, size.Height);

    using (Graphics graphics = Graphics.FromImage(result))
    {                
        graphics.CompositingQuality = CompositingQuality.HighQuality;
        graphics.InterpolationMode = InterpolationMode.HighQualityBicubic;
        graphics.SmoothingMode = SmoothingMode.HighQuality;
        graphics.DrawImage(image, 0, 0, result.Width, result.Height);
    }

    return result;
}
用法:

const int padding = 6;
Size size = new Size(checkBox.Width - padding, checkBox.Height - padding);
checkBox.Image = ResizeImage(new Icon(pathToIconFile).ToBitmap(), size);
选中“图像属性”复选框。选择本地资源>导入并导航到图标文件。默认情况下,图标文件将不显示,因此您需要选择所有文件*.filter

如果要从代码中设置图标,可以通过以下方式进行设置:

checkBox.Image = new Icon(pathToIconFile).ToBitmap();
更新:无法缩放或拉伸图像,这是通过图像属性指定的。在这种情况下,您需要改用BackgroundImage属性:

checkBox.BackgroundImage = new Icon(pathToIconFile).ToBitmap();
checkBox.BackgroundImageLayout = ImageLayout.Stretch;
您也可以通过编程方式调整图像大小,或者在OnPaint方法中手动绘制图像,但这需要更多的努力

更新:调整图像大小

public static Bitmap ResizeImage(Image image, Size size)
{            
    Bitmap result = new Bitmap(size.Width, size.Height);

    using (Graphics graphics = Graphics.FromImage(result))
    {                
        graphics.CompositingQuality = CompositingQuality.HighQuality;
        graphics.InterpolationMode = InterpolationMode.HighQualityBicubic;
        graphics.SmoothingMode = SmoothingMode.HighQuality;
        graphics.DrawImage(image, 0, 0, result.Width, result.Height);
    }

    return result;
}
用法:

const int padding = 6;
Size size = new Size(checkBox.Width - padding, checkBox.Height - padding);
checkBox.Image = ResizeImage(new Icon(pathToIconFile).ToBitmap(), size);

复选框的外观类似于按钮,这是什么意思?@Maresh有一个winforms标记。@lazyberezovsky我想OP的意思是它是一个复选框,其外观设置为appearance.button。是吗?是的,我正在使用Windows窗体复选框控件作为按钮。复选框的外观类似于按钮,这是什么意思?@Maresh有一个winforms标记。@lazyberezovsky我假设OP的意思是它是一个复选框,其外观设置为appearance.Button。是吗?是的,我使用Windows窗体复选框控件作为按钮。但我想放置图标,而不是图像。但我想放置图标,而不是图像。谢谢它可能工作正常,但我的按钮上的图标非常大。是否有任何方法可以放置在按钮上?在这种情况下,您可以将图标指定给BackgroundImage属性,并将BackgroundImageLayout设置为拉伸。也可以在指定图标之前调整其大小。我会选择第一个选项。你能告诉我如何调整它的大小吗?谢谢,它可能会工作得很好,但我的按钮上的图标很大。有什么方法可以安装在按钮上吗?在这种情况下,你可以将图标指定给BackgroundImage属性,并将BackgroundImageLayout设置为拉伸。也可以在指定图标之前调整其大小。我会选择第一个选项。你能告诉我如何调整它的大小吗??