I'm making an application in which a user selects one or two options using checkbox and then click the calculate button and the total price is shown
For this, I MUST use my own method for example, for the Oil and Lube part and call it using the click event handler to display the value in the labelbox.
Here is the PIC:
(Consider only Oil and Lube and Total Fees)
Problem is that I want to return more than one selections, one for (if user selected Oil Change) , second one for (if user selected Lube Job) and the last one (if user selected both these options), but I can only return selection value for either of these cases.
Here is my code (MY OWN METHOD):
private decimal OilLubeCharges(ref decimal ValueTotal, ref decimal ValueOilChange, ref decimal ValueOilLube )
{
decimal oilChange_var=0m;
decimal lubeJob_var=0m;
decimal oilLube_var=0m;
decimal totalOiltLubeCharges_var = 0m;
if (oilChangeCheckBox.Checked && lubeJobCheckBox.Checked)
{
oilChange_var = 26.00m;
lubeJob_var = 18.00m;
totalOiltLubeCharges_var = oilChange_var + lubeJob_var;
}
else if (oilChangeCheckBox.Checked)
{
oilChange_var = 26.00m;
}
else if (lubeJobCheckBox.Checked)
{
lubeJob_var = 18.00m;
}
return oilChange_var;
}
Here is the Code (CALCULATE BUTTON CLICK EVENT HANDLER)
private void calculateButton_Click(object sender, EventArgs e)
{
decimal totalOilLubeChargesAccept_var = 0m;
decimal oilChangeAccept_var = 0m;
decimal oilLubeChangesAccept_var =0m;
decimal storeValue = OilLubeCharges(ref totalOilLubeChargesAccept_var, ref oilChangeAccept_var, ref oilLubeChangesAccept_var );
totalFeesAnsLabelBox.Text = storeValue.ToString();
}
As you can see, I can ONLY use return statement with, for example, return oilChange_var
, but what about totalOiltLubeCharges_var
& lubeJob_var
.
I want to find a way to return more than one selections for each of these if cases and then shown the value into label box when the user clicks on the Calculate button (IN CLICK EVENT HANDLER) after making either of these selections.
EDIT:
With an out parameter It is giving an error "The out parameter must be assigned to before it leaves the current method"
Here is my method with an out parameter:
private decimal OilLubeCharges(out decimal ValueTotal, out decimal ValueOilChange, out decimal ValueOilLube )
{
decimal oilChange_var=0m;
decimal lubeJob_var=0m;
decimal oilLube_var=0m;
decimal totalOiltLubeCharges_var = 0m;
if (oilChangeCheckBox.Checked && lubeJobCheckBox.Checked)
{
oilChange_var = 26.00m;
lubeJob_var = 18.00m;
totalOiltLubeCharges_var = oilChange_var + lubeJob_var;
}
else if (oilChangeCheckBox.Checked)
{
oilChange_var = 26.00m;
}
else if (lubeJobCheckBox.Checked)
{
lubeJob_var = 18.00m;
}
return totalOiltLubeCharges_var;
}
Here is click event method:
private void calculateButton_Click(object sender, EventArgs e)
{
decimal totalOilLubeChargesAccept_var;
decimal oilChangeAccept_var;
decimal oilLubeChangesAccept_var;
decimal storeValue = OilLubeCharges(out totalOilLubeChargesAccept_var, out oilChangeAccept_var, out oilLubeChangesAccept_var );
totalFeesAnsLabelBox.Text = storeValue.ToString();