Я делаю простое приложение формы окна конвертера единиц в c # .net, так как это конвертер единиц, я добавил выпадающий список или поле со списком, чтобы выбрать «массу», «длину», «температуру» и т. Д.Чтобы добавить функциональность к этим элементам поля со списком, нужно ли использовать регистр переключателей для этого конкретного выбора в каждой функции виджета (например, кнопка «Рассчитать», поле со списком, переключатели и т. Д.) Или есть способ получить это?сделано сразу?Ниже приведен неполный код, который я написал до сих пор в визуальной студии.На данный момент я использовал переключатели в кнопке «Рассчитать» и «Селектор» со списком (отмечен комментариями).
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 UnitConverter
{
public partial class formUnitConverter : Form
{
public formUnitConverter()
{
InitializeComponent();
}
private void FormUnitConverter_Load(object sender, EventArgs e)
{
}
private void BtnCalculate_Click(object sender, EventArgs e) //Calculate Button
{
if (isNum(textBox1.Text))
{
switch (comboBox1.SelectedItem)
{
case "Mass":
{
if (radioButton1.Checked)
{
double res = Convert.ToDouble(textBox1.Text) * 2.20462262185;
textBox2.Text = Math.Round(res, 4).ToString();
}
if (radioButton2.Checked)
{
double res = Convert.ToDouble(textBox1.Text) / 2.20462262185;
textBox2.Text = Math.Round(res, 4).ToString();
}
break;
}
}
label5.Text = "";
}
else
{
label5.Text = "Plese enter numbers only.";
}
}
private void RadioButton1_CheckedChanged(object sender, EventArgs e)
{
if(radioButton1.Checked)
{
label3.Text = "kg";
label4.Text = "lbs";
textBox2.Text = "";
}
}
private void RadioButton2_CheckedChanged(object sender, EventArgs e)
{
if (radioButton2.Checked)
{
label3.Text = "lbs";
label4.Text = "kg";
textBox2.Text = "";
}
}
public bool isNum(string s)
{
return double.TryParse(s, out double i);
}
private void ComboBox1_SelectedIndexChanged(object sender, EventArgs e) //Combo Box Selector
{
switch (comboBox1.SelectedItem)
{
case "Mass":
{
label3.Text = "kg";
label4.Text = "lbs";
break;
}
case "Temperature":
{
label3.Text = "F";
label4.Text = "C";
break;
}
}
}
}
}