Если вы нажмете CTRL + N, чтобы открыть новое окно, вы увидите это поведение. Если вы откроете новое окно из свежего, а затем перейдете по URL, вы не должны видеть это.
Я почти точно протестировал ваш код, и он не сохранил значение _Total между двумя совершенно отдельными окнами браузера. Вот ваш код, с небольшой корректировкой.
public static Decimal _Total;
protected void Page_Load(object sender, EventArgs e)
{
if (Page.IsPostBack == false)
{
_Total = 0;
TextBox1.Text = _Total.ToString();
}
}
public void ShowCekBanka(object sender, EventArgs e)
{
_Total = 10 * 5;
TextBox1.Text = _Total.ToString();
}
public void ShowNakitBanka(object sender, EventArgs e)
{
_Total = 10 * 10;
TextBox1.Text = _Total.ToString();
}
Я запустил страницу и нажал кнопку, чтобы получить общее значение, отличное от 0, затем открыл новый браузер, и общее количество было равно 0.
Затем я запустил страницу и нажал кнопку, чтобы получить итоговое значение, отличное от 0, затем нажал CTRL + N, после чего итог был «предварительно заполнен».
Несмотря на это, я думаю, что вы используете "static" как "VB-ism" - попробуйте его без, и я думаю, что вы будете в порядке.