带图片的简单 ON/OFF 切换按钮

Simple ON/OFF toggle button with image

我正在开发一个 WinForms 项目,我试图创建一个 ON/OFF 切换按钮,该按钮使用两个单独的图像(都位于项目资源中)用于 "ON" 设置,和 "OFF" 设置。

根据我在网上找到的内容,我使用了外观设置为 "Button" 的 CheckBox

这是我目前为我的按钮获得的代码:

    private void ToggleButton_CheckedChanged(object sender, EventArgs e)
    {
        if (ToggleButton.Checked)
        {
            ToggleButton.BackgroundImage.Equals(Properties.Resources.ToggleButton_ON);
        }
        else
        {
            ToggleButton.BackgroundImage.Equals(Properties.Resources.ToggleButton_OFF);
        }
    }

出于某种原因,当我点击按钮时没有任何反应,我不确定我做错了什么。

基本上,当用户单击按钮时,我希望背景图像在 ToggleButton_ONToggleButton_OFF 之间循环往复。

将您的代码更改为:

   private void ToggleButton_CheckedChanged(object sender, EventArgs e)
    {
        if (ToggleButton.Checked)
            ToggleButton.BackgroundImage = Properties.Resources.ToggleButton_ON;
        else
            ToggleButton.BackgroundImage = Properties.Resources.ToggleButton_OFF;
    }

.Equals 用于检查相等性,您可以在自己的 类 中覆盖它。