I have this following code:
if (userValueSom01 == realResult01)
{
//answer = correct
//count +1 for overall good answers
WpfApplication1.Properties.Settings.Default.totallGood++;
//count for good +1
answerThisWindowGood++;
//make visible the green logo
Som01G.Visibility = Visibility.Visible;
}
else
{
//answer = wrong
//count +1 for overall wrong answers
WpfApplication1.Properties.Settings.Default.totallWrong++;
//count for wrong +1
answerThisWindowWrong++;
//make visible the red logo
Som01W.Visibility = Visibility.Visible;
labelSom01Check.Content = Convert.ToString(realResult01);
}
Now the point is, this happens XX times, where XX is a number corresponding with the numbers you see within the code.
So in the above example the XX is 01.
*note, its the 01’s in the input, and the 01 in the results too
In not very deep into c# (yet), and at first i thought that when XX is 20, i will need to copy this above part 20 times, and change the numbers.
Now this seems cumbersome, and i guess there should be some smarter way ti deal with this, point is, i cant think of how (as written above, im not very deep into c# yet).
Anyone that can push me into the right direction ?
thank you in advance.
—EDIT 1—
thank you Miika L.
slightly different from your solution:
public bool checkValue(double value, int result, Image controlG, Image controlW, Label label)
{
if (value == result)
{
//... Do stuff
controlG.Visibility = Visibility.Visible;
return true;
}
else
{
//... Do other stuff
controlW.Visibility = Visibility.Visible;
label.Content = result.ToString();
return false;
}
}
and now i can indeed just call:
bool test = checkValue(userValueSom01, realResult01, Som01G, Som01W, labelSom01Check);
works 🙂
thanx!
What about writing it as a function?