Вы пытаетесь использовать переменную с именем exchangeRate
в своем методе ConvBClick
, но эта переменная не существует в этом методе.Вы создали переменную с таким же именем в своем методе CmbConvSelectedIndexChanged
, но затем никогда ничего с ней не делали.
Однако, больше к общей структуре кода, ваш метод CmbConvSelectedIndexChanged
на самом деле ничего не делает.Он выполняется каждый раз, когда выбранный индекс изменяется на этом элементе управления, но больше ничего не влияет.Вместо того, чтобы вообще реагировать на это событие SelectedIndexChanged
, просто напишите метод, который возвращает желаемое значение в зависимости от текущего выбранного индекса:
double GetExchangeRate()
{
double exchangeRate = 0.0;
if(cmbConv.SelectedItem.ToString() == "Miles to Kilometers")
{
exchangeRate = 1.60934;
}
// etc., the rest of your conditions
return exchangeRate;
}
Затем, нажав кнопку, вы можете просто вызватьспособ получения текущего курса обмена:
double conv = Convert.ToDouble(convIn.Text);
var exchangeRate = GetExchangeRate();
var conversion = conv * exchangeRate;
var result = Convert.ToString(conversion);
convOut.Text = result;