📜  如何在C#中设置RadioButton的外观?

📅  最后修改于: 2021-05-29 15:09:45             🧑  作者: Mango

在Windows窗体中,RadioButton控件用于在选项组中选择一个选项。例如,从给定列表中选择您的性别,因此您将仅在“男”或“女”或“跨性别”之类的三个选项中选择一个。在Windows窗体中,允许使用RadioButton的Appearance属性在窗体中设置RadioButton的外观。 Appearance属性设置为normal,则其行为类似于普通RadioButton,并且如果Appearance Property设置为按钮,则它将像切换按钮一样工作。此属性的默认值为“正常”。您可以通过两种不同的方式设置此属性:

1.设计时:这是设置RadioButton外观的最简单方法,如以下步骤所示:

  • 第1步:创建一个Windows窗体,如下图所示:
    Visual Studio->文件->新建->项目-> WindowsFormApp
  • 步骤2:从工具箱中拖动RadioButton控件,并将其放在Windows窗体上。您可以根据需要将RadioButton控件放置在Windows窗体上的任何位置。
  • 步骤3:拖放之后,您将转到RadioButton控件的属性以设置RadioButton的外观。

    输出:

2.运行时:比上述方法有些棘手。在此方法中,可以借助给定的语法以编程方式设置RadioButton控件的外观:

public System.Windows.Forms.Appearance Appearance { get; set; }

此处,外观代表外观值。外观值有两种类型,一种是“正常”,另一种是“按钮”。如果分配给此属性的值不属于Appearance值,它将抛出InvalidEnumArgumentException。以下步骤显示如何动态设置RadioButton的外观:

  • 步骤1:使用RadioButton类提供的RadioButton()构造函数创建单选按钮。
    // Creating radio button
    RadioButton r1 = new RadioButton();
    
  • 步骤2:创建RadioButton之后,设置RadioButton类提供的RadioButton的Appearance属性。
    // Setting the appearance of the radio button
    r1.Appearance = Appearance.Button;
    
  • 步骤3:最后使用Add()方法将此RadioButton控件添加到表单中。
    // Add this radio button to the form
    this.Controls.Add(r1);
    

    例子:

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;
      
    namespace WindowsFormsApp21 {
      
    public partial class Form1 : Form {
      
        public Form1()
        {
            InitializeComponent();
        }
      
        private void Form1_Load(object sender,
                                 EventArgs e)
        {
            // Creating and setting label
            Label l = new Label();
            l.AutoSize = true;
            l.Location = new Point(176, 40);
            l.Text = "Select Your Branch";
            l.ForeColor = Color.DarkGreen;
      
            // Adding this label to the form
            this.Controls.Add(l);
      
            // Creating and setting the 
            // properties of the RadioButton
            RadioButton r1 = new RadioButton();
            r1.AutoSize = true;
            r1.Text = "CSE";
            r1.Location = new Point(286, 39);
            r1.ForeColor = Color.DarkGreen;
            r1.Appearance = Appearance.Button;
      
            // Adding this label to the form
            this.Controls.Add(r1);
      
            // Creating and setting the
            // properties of the RadioButton
            RadioButton r2 = new RadioButton();
            r2.AutoSize = true;
            r2.Text = "ECE";
            r2.Location = new Point(356, 40);
            r2.ForeColor = Color.DarkGreen;
            r2.Appearance = Appearance.Normal;
            // Adding this label to the form
            this.Controls.Add(r2);
        }
    }
    }
    

    输出: