示例#1
0
        public void OperationButtonPress(string operation)
        {
            newDisplayRequired = true;
            try
            {
                if (FirstOperand == String.Empty || LastOperation == "=")
                {
                    FirstOperand  = Display;
                    LastOperation = operation;

                    Expression = calculation.ToHalfExpressionString(operation);
                }
                else
                {
                    SecondOperand = Display;
                    Operation     = LastOperation;
                    calculation.CalculateResult();

                    Expression = calculation.ToFullExpressionString();
                    History.Add(String.Format("{0} {1}", Expression, Result));

                    LastOperation = operation;
                    Display       = Result;
                    FirstOperand  = Display;
                }
            }
            catch (Exception)
            {
                Display = Result == String.Empty ? "Error" : Result;
            }
        }
示例#2
0
 public static string ToHalfExpressionString(this CalculationModel model)
 {
     return(model.ToHalfExpressionString(model.Operation));
 }