在桌上的两个旁边按钮显示

时间:2015-07-30 09:41:21

标签: c# winforms

我想自动打开/关闭电器。所以我想在tableview中添加两个侧边按钮。怎么办呢?enter image description here

3 个答案:

答案 0 :(得分:1)

根据this,您可以使用ToggleButton。 WinForms的ToggleButton旨在管理.NET Windows窗体上的状态。它具有CheckBox的类似功能。但是,ToggleButton控件提供了与标准CheckBox按钮不同的视觉效果和更灵活的时尚设计。有关详细信息和实现,请查看codeproject中的Windows Forms ToggleButton文章。

答案 1 :(得分:1)

您可以覆盖按钮的绘制方式以及布尔值,以保持控件的开/关状态。一个可以通过一点工作清理的快速丑陋的尝试是:

class OnOffButton : Button
{

    bool on = true;

    protected override void OnPaint(PaintEventArgs pevent)
    {
        pevent.Graphics.Clear(this.BackColor);
        pevent.Graphics.DrawRectangle(Pens.Blue, 0, 0, 85, 25);
        if (on)
        {
            pevent.Graphics.DrawString("ON", new Font("Microsoft sans serif", 8, FontStyle.Bold), Brushes.Black, 5, 5);
            pevent.Graphics.FillRectangle(Brushes.Gray, 50, 1, 35, 24);
        }
        else
        {
            pevent.Graphics.DrawString("OFF", new Font("Microsoft sans serif", 8, FontStyle.Bold), Brushes.Black, 50, 5);
            pevent.Graphics.FillRectangle(Brushes.Gray, 1, 1, 35, 24);
        }
    }

    protected override void OnClick(EventArgs e)
    {
        on = !on;
        Invalidate();
    }

    public bool On { get { return on; } }
}

答案 2 :(得分:0)

  

我想自动打开/关闭电器。所以我想要   添加两个侧面按钮....

我假设您需要 toggle switch control

enter image description here

切换开关模仿物理开关,允许用户打开或关闭物体。控件有两种状态:on(选中为true)和off(选中为false)。

How to add a toggle switch (XAML)

<ToggleSwitch x:Name="toggleSwitch1" Header="ToggleSwitch" 
              OnContent="On" OffContent="Off" 
              Toggled="ToggleSwitch_Toggled"/>

您可以在更高版本的.NET Framework中找到toggleswitch。 还有一些第三方工具可以提供相同的工具。

如果您没有其他选择,可以选择复选框(Toggleswitch来自复选框

更多参考资料:

toggle switch class

由于