2016-11-20 6 views
1

以下のコードがあります。これをもっと効率的に書く方法はありますか?私はコードを繰り返すので、Drankクラスには他の値しかありません。最適化:同じコードで異なる値を持つ複数のclickevent

private void btnCola_Click(object sender, RoutedEventArgs e) 
    { 
     Drank dranken = new Drank 
     { Naam = "Cola", Prijs = 1.50M }; 
     lblDrankje.Content = dranken.ToString(); 
     GroupBox1.IsEnabled = false; 
    } 

    private void btnWater_Click(object sender, RoutedEventArgs e) 
    { 
     Drank dranken = new Drank 
     { Naam = "Water", Prijs = 1.00M }; 
     lblDrankje.Content = dranken.ToString(); 
     GroupBox1.IsEnabled = false; 
    } 

    private void btnKoffie_Click(object sender, RoutedEventArgs e) 
    { 
     Drank dranken = new Drank 
     { Naam = "Koffie", Prijs = 1.70M }; 
     lblDrankje.Content = dranken.ToString(); 
     GroupBox1.IsEnabled = false; 
    } 

    private void btnSoep_Click(object sender, RoutedEventArgs e) 
    { 
     Drank dranken = new Drank 
     { Naam = "Soep", Prijs = 1.90M }; 
     lblDrankje.Content = dranken.ToString(); 
     GroupBox1.IsEnabled = false; 
    } 

答えて

1

あなたはすべてのクリックイベント

private void DrankClick(string naam, decimal prijs) 
{ 
    Drank dranken = new Drank 
    { Naam = naam, Prijs = prijs }; 
    lblDrankje.Content = dranken.ToString(); 
    GroupBox1.IsEnabled = false; 
} 

ためのロジックでメソッドを作成し、例えば各イベントのメソッドを持つことができます

private void btnCola_Click(object sender, RoutedEventArgs e) 
{ 
    DrankClick("Cola", 1.50M); 
} 
関連する問題