System.NullReferenceException: 'Nesne başvurusu bir nesnenin örneğine ayarlanmadı.'
odaTipfiyat, null idi.
hatası alıyorum da kodda odatipi seçtiğimde fiyat vermiyor yani çalıştıramıyorum yardımcı olur musunuz?
public partial class Form1 : Form
{
decimal[] odaTipfiyat;
string[] Manzara;
decimal secilenOdaFiyatı = 0;
string[] oda;
decimal[] manzaraFiyat;
decimal ToplamFiyat = 0;
private decimal secilenmanzaraFiyati;
public Form1()
{
InitializeComponent();
}
private void HotelRezervasyon_Load(object sender, EventArgs e)
{
OdaTipiOlustur();
ManzaraDoldur();
OdaFiyat();
manzaraFiyatDoldur();
}
void manzaraFiyatDoldur()
{
manzaraFiyat = new decimal[] { 10, 20, 50, 75 };
}
private void OdaFiyat()
{
odaTipfiyat = new decimal[] { 100, 150, 200, 250 };
}
void ManzaraDoldur()
{
cmbManzara.Text = "Manzara Seçiniz";
cmbManzara.Items.Insert(0, "Manzara Seçiniz");
Manzara = new string[] { "Deniz", "Orman", "Havuz", "Arka bahçe" };
for (int i = 0; i < Manzara.Length; i++)
{
cmbManzara.Items.Add(Manzara[i]);
}
}
void OdaTipiOlustur()
{
cmpOdaTipi.Text = "Oda Seçiniz";
oda = new string[] { "Standart", "Çift Kişi", "Suit", "Kral Dairesi" };
cmpOdaTipi.Items.Insert(0, "Oda Seçiniz");
for (int i = 0; i < oda.Length; i++)
{
cmpOdaTipi.Items.Add(oda[i]);
}
}
private void button1_Click(object sender, EventArgs e)
{
lstListele.Items.Clear();
if (cmpOdaTipi.SelectedIndex > 0)
{
string secilenoda = cmpOdaTipi.SelectedItem.ToString();
int secilenIndexOda = cmpOdaTipi.SelectedIndex;
secilenOdaFiyatı = odaTipfiyat[secilenIndexOda];
}
if (cmbManzara.SelectedIndex > 0)
{
string secilenmanzara = cmbManzara.SelectedItem.ToString();
int SecilenIndexManzara = cmbManzara.SelectedIndex;
secilenmanzaraFiyati = manzaraFiyat[SecilenIndexManzara];
}
int kalınangun = dtpCikis.Value.DayOfYear - dtpGiris.Value.DayOfYear;
lstListele.Items.Add("Kaldığınız gün = " + kalınangun);
lstListele.Items.Add("Seçtiğiniz Oda =" + cmpOdaTipi.Text);
lstListele.Items.Add("Seçtiğiniz Manzara =" + cmbManzara.Text);
decimal minibarfiyati = 0;
foreach (Control minibar in groupBox1.Controls)
{
if (minibar is CheckBox)
{
CheckBox chk = (CheckBox)minibar;
if (chk.Checked)
{
minibarfiyati += Convert.ToDecimal(chk.Tag);
lstListele.Items.Add(chk.Text);
}
}
}
string OdemeTipi = "";
foreach (var tip in this.Controls)
{
if (tip is RadioButton)
{
RadioButton rtip = (RadioButton)tip;
if (rtip.Checked)
{
OdemeTipi = rtip.Text;
lstListele.Items.Add("Ödeme Tipi =" + OdemeTipi);
}
}
}
ToplamFiyat = secilenOdaFiyatı + minibarfiyati + secilenmanzaraFiyati;
lstListele.Items.Add("Toplam Fiyat =" + ToplamFiyat + "TL");
}
private void dtpGiris_ValueChanged(object sender, EventArgs e)
{
if (dtpGiris.Value.Day < DateTime.Now.Day)
{
MessageBox.Show("Geçmişten bir tarih secemezsiniz");
}
}
private void dtpCikis_ValueChanged(object sender, EventArgs e)
{
if (dtpCikis.Value.Day < dtpGiris.Value.Day)
{
MessageBox.Show("Giriş Tarihinden sonraki günleri seçebilirsiniz");
}
}
}