Zapamiętywanie i wyświetlanie wyniku z kalkulatora

0

Witam.
Nie mam pojęcia co napisać żeby mój kalkulator zapamiętywał wyniki i dodawał je do siebie, jednocześnie wyświetlając sumę wszystkich wyników otrzymanych wcześniej.
Oto kod mojego kalkulatora:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

namespace Kurs2
{
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }
        int a;
        int b;
        int c;
        private void Dodawanie_Click(object sender, RoutedEventArgs e)
        {
            a = int.Parse(TXB_1.Text);
            b = int.Parse(TXB_2.Text);
            c = a + b;
                MessageBox.Show(c.ToString());
        }

        private void Odejmowanie_Click(object sender, RoutedEventArgs e)
        {
            a = int.Parse(TXB_1.Text);
            b = int.Parse(TXB_2.Text);
            c = a - b;
            MessageBox.Show(c.ToString());
        }

        private void Mnozenie_Click(object sender, RoutedEventArgs e)
        {
            a = int.Parse(TXB_1.Text);
            b = int.Parse(TXB_2.Text);
            c = a * b;
            MessageBox.Show(c.ToString());
        }

        private void Dzielenie_Click(object sender, RoutedEventArgs e)
        {
            a = int.Parse(TXB_1.Text);
            b = int.Parse(TXB_2.Text);
            c = a / b;
            MessageBox.Show(c.ToString());
        }
    }
}

Jeszcze screen z wersji graficznej:
3a5ea33900.png

0

Jeżeli piszesz w WPF można skorzystać z wzorca MVVM, aby ograniczyć code-behind.

Prawdopodobnie potrzebujesz stack https://www.dotnetperls.com/stack

0

Jak dobrze rozumiem, chcesz zachować ciągłość działań, czyli 2+4-2+8. Teraz możesz tylko zrobić pojedyncze działania. TXB_1 powinieneś zrobić readonly (w kalkulatorach jest tylko jedno okienko do wpisywania liczb) - będzie ono wyświetlało bieżący wynik działania (zamiast MessageBox-a). Powinieneś zrobić zmienna prywatna w klasie MainWindow (poniżej int c wpisz int result=0) - będzie ona trzymała aktualny wynik. Ciała funkcji też musisz zmienić. Np dodawanie w taki sposób:

 
b = int.Parse(TXB_2.Text); 
result+=b;  
TXB_1.Text = result;

Resztę już musisz sam zrobić. Dodatkowo zrób przycisk czyszczący działania (zmienną result, odpowiednik C w kalkulatorze);

0

Ok dzięki za pomoc, ale mam pytanie.
Czy da się zrobić tak, aby program zapamiętywał wynik nawet gdy jest zamknięty?
Chodzi mi o to, że mam tam zapisaną liczbę np.15 i zamykam program to czy jest opcja żeby po otwarciu programu ponownie było znowu 15? Bardzo mi na tym zależy!

Kod: http://pokazkod.pl/23d6234ac341ca3dffe07dc1bcf00a61935212e26bc65aa4f7
Screen: http://imgur.com/a/CiJ2e

0

Poszukaj w google readline i writeline. A sciezke z environment current directory

1 użytkowników online, w tym zalogowanych: 0, gości: 1