2013-10-16 37 views
-4

我不確定我是否正確地做了這件事,但我試圖在運行時單擊CalculateBttn_Click按鈕時運行CalculateGrossPay方法。但是,我會隨機出現語法錯誤,這些錯誤會因爲任何原因而不斷變化我不會改變任何事情來實現這一點。我應該制定一個單獨的方法來計算總工資。我在調用另一種方法時遇到了問題

private void CalculateBttn_Click(object sender, EventArgs e) 
{ CalculateGrossPay(decimal hours, decimal rate); 

    } 




    private decimal CalculateGrossPay(decimal hours, decimal rate) 
    { 
     decimal result=0.00m; 
     decimal standardHours= 0.00m; 
     decimal overtimeHours=0.00m; 



     if (hours > 40) 
     { 

      overtimeHours = (hours - 40) * ((rate) * 1.5m); 
      standardHours = 40 * rate; 

      DisplayOutPut.Text = name+ NameTextBox.Text + ""; 

      DisplayOutPut.Text = "Gross Pay:" + result; 
     } 
     else 
     { 
      standardHours = hours * rate; 
      DisplayOutPut.Text = "Hours:" + HoursTextBox.Text; 
      DisplayOutPut.Text = "Rate:" + RateTextBox.Text; 
     } 
     result = standardHours + overtimeHours; 
     return result; 

}

+0

你的電話是錯誤的,有傳遞值,如:'CalculateGrossPay (7M,8M)'或者任何你的價值觀。 – wudzik

回答

2

的錯誤是在你調用方法的方式。你應該調用你的方法是這樣的:

decimal hours = 1; 
decimal rate = 5; 

CalculateGrossPay(hours, rate); 

的時間和速度的值可以硬編碼,也可以從用戶界面讀取。

+0

你會如何從用戶界面讀取它們? –

+0

@在您的代碼中未定義您已使用DisplayOutput.Text之類的東西。我想這是一個標籤或什麼?您還有可用於輸入的文本框控件。您可以從代碼中讀取字符串值並將其轉換爲小數。嘗試閱讀MSDN以查找示例並使用搜索引擎在Internet上查找其他教程。如果你有特定的問題,你總是可以來到Stackoverflow。 –

4

指定參數的C#中的方法需要使用參數調用。 CalculateGrossPay定義2參數小時和速率爲decimal值。

因此,您需要撥打CalculateGrossPay並將兩個decimal值作爲參數(請參閱示例)。

請訪問以下網站了解更多信息:

Methods MSDN

Variables MSDN


例子:

CalculateGrossPay(10.1,0.4); 
相關問題