Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
0 / 0 / 0
Регистрация: 06.03.2016
Сообщений: 4

Сохранение данных в текстовом поле textBox

13.06.2013, 12:50. Показов 1880. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем доброе время суток!

У меня на форме есть текстовое поле. При загрузке формы в поле подставляется значение из базы данных через DataBindings.

Я меняю значение в поле. И нажимаю кнопку. Происходят вычисления, в которых участвует это поле. Но когда я при отладке в режиме пошагового выполнения смотрю значения переменных, то значение поля textBox1.Text старое, из базы данных. А не то, которое я поменял вручную. ПОЧЕМУ? Не могу никак понять.

Помогите плз начинающему.

Спасибо.

Рамиль.

Добавлено через 7 часов 3 минуты
Может для ответа поможет код формы:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
 
namespace Petrol
{
    public partial class Form1 : Form
    {
        float discount;
        DateTime newindate;
        decimal newtxt;
 
        public Form1()
        {
            InitializeComponent();
        }
 
        private void petrolBindingNavigatorSaveItem_Click(object sender, EventArgs e)
        {
            this.Validate();
            this.petrolBindingSource.EndEdit();
            this.tableAdapterManager.UpdateAll(this.petrolDataSet);
 
        }
 
        private void Form1_Load(object sender, EventArgs e)
        {
            // TODO: данная строка кода позволяет загрузить данные в таблицу "petrolDataSet.Petrol". При необходимости она может быть перемещена или удалена.
            this.petrolTableAdapter.FillByAllDesc(this.petrolDataSet.Petrol);
            
            this.label4.Text = Properties.Settings.Default.incgrade;
            this.label6.Text = Convert.ToString(Properties.Settings.Default.inccost);
            this.discount = Properties.Settings.Default.incdiscount;
 
        }
 
        private void выходToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Close();
        }
 
        private void bindingNavigatorAddNewItem_Click(object sender, EventArgs e)
        {
 
        }
 
        // Вызов формы с постоянным параметрами с возможностью их редактирования.
        private void параметрыToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Form2 incset = new Form2();
//            incset.Show();
            if (incset.ShowDialog() == DialogResult.OK)
            {
                this.discount = Properties.Settings.Default.incdiscount = incset.GetDiscount;
                this.label6.Text = Convert.ToString(incset.GetCost);
                Properties.Settings.Default.inccost = incset.GetCost;
                this.label4.Text = Properties.Settings.Default.incgrade;
                this.label6.Text = Convert.ToString(Properties.Settings.Default.inccost);
                this.discount = Properties.Settings.Default.incdiscount;
            }
        }
 
        // Расчет заправки
        private void button1_Click(object sender, EventArgs e)
        {
            decimal sumcost, lcost, plata, ldisc, rest, nrest, txtrest;
            decimal st;
 
            // Вычисляем стоимость заправки
            sumcost = Convert.ToDecimal(textBox1.Text) * Convert.ToDecimal(label6.Text);
            // Определяем скидку в литрах бензина
            ldisc = Convert.ToDecimal(textBox1.Text) * Convert.ToDecimal(discount);
            // Вычисляем оплачиваемые литры бензина
            lcost = Convert.ToDecimal(textBox1.Text) - ldisc;
            // Вычисляем оплату за заправку
            plata = sumcost - lcost;
            // Вычисляем остаток на карте после заправки
            txtrest = Convert.ToDecimal(textBox3.Text);
            nrest = SetRest1();
            rest = (nrest + txtrest) - plata;
            
            // Создаем новую строку данных
            PetrolDataSet.PetrolRow newPetrolRow;
            newPetrolRow = petrolDataSet.Petrol.NewPetrolRow();
 
            newPetrolRow.indate = newindate;
//            string sqlDateStr = dateTimePicker1.Text;
//            label10.Text = dateTimePicker1.Value.ToString();
            newPetrolRow.litr = Convert.ToDecimal(label11.Text);
 
 
            
 
 
            st = textBox3.Text.Length < 0 ? newPetrolRow.bring = 0.00M : newPetrolRow.bring = Convert.ToDecimal(textBox3.Text);
            newPetrolRow.rest = rest;
            newPetrolRow.grade = Properties.Settings.Default.incgrade;
            newPetrolRow.cost = Convert.ToDecimal(Properties.Settings.Default.inccost);
 
            // Добавляем строку в таблицу "Petrol"
//            this.petrolDataSet.Petrol.Rows.Add(newPetrolRow);
 
            // Записываем новую строку в базу данных
            this.petrolTableAdapter.Insert(newPetrolRow.indate, newPetrolRow.litr, newPetrolRow.bring, newPetrolRow.rest, newPetrolRow.grade, newPetrolRow.cost);
 
            this.petrolTableAdapter.FillByAllDesc(this.petrolDataSet.Petrol);
        }
 
        // Остаток на карте после предыдущей заправки.
        public decimal SetRest1()
        {
 
            int i = 0;
            decimal[] a = new decimal [10];
 
            this.petrolTableAdapter.FillByAllDesc(this.petrolDataSet.Petrol);
            foreach (DataRow row in this.petrolDataSet.Petrol)
            {
                a[i] = Convert.ToDecimal(row["rest"]);
                i = i + 1;
            }
 
            label10.Text = a[1].ToString();
            return a[1];
        }
 
        // Отмена расчета заправки
        private void button2_Click(object sender, EventArgs e)
        {
            this.petrolTableAdapter.FillByAllDesc(this.petrolDataSet.Petrol);
 
            this.label4.Text = Properties.Settings.Default.incgrade;
            this.label6.Text = Convert.ToString(Properties.Settings.Default.inccost);
            this.discount = Properties.Settings.Default.incdiscount;
        }
 
        private void monthCalendar1_DateChanged(object sender, DateRangeEventArgs e)
        {
            
 
        }
 
        // Дата новой заправки, выбранная в календаре.
        private void monthCalendar1_DateSelected(object sender, DateRangeEventArgs e)
        {
            newindate = Convert.ToDateTime(this.monthCalendar1.SelectionRange.End.ToShortDateString());
        }
 
        private void textBox1_TextChanged(object sender, EventArgs e)
        {
            label11.Text = textBox1.Text;
            
        }
 
        //private void fillByAllDescToolStripButton_Click(object sender, EventArgs e)
        //{
        //    try
        //    {
        //        this.petrolTableAdapter.FillByAllDesc(this.petrolDataSet.Petrol);
        //    }
        //    catch (System.Exception ex)
        //    {
        //        System.Windows.Forms.MessageBox.Show(ex.Message);
        //    }
 
        //}
 
    }
}
Спасибо.
Рамиль.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
13.06.2013, 12:50
Ответы с готовыми решениями:

[UWP] Разрешить вводить только числа и одну точку в текстовом поле TextBox
Доброго времени суток уважаемые форумчане. В настоящее время я работаю над своим приложением UWP . Есть ли способ разрешить пользователям...

Сохранение данных в текстовом файле
Как сохранить в текстовый файл 2 переменные типа Real, получившиеся в результате выполнения неких операций, и слово введенное в Edit?

Сохранение данных в текстовом файле
Народ нужно не большая помощь тут имеется код ... нужно сделать форму на подобие регистрации и при заполнение данные должны сохраняться...

4
 Аватар для Монфрид
1245 / 1055 / 293
Регистрация: 07.03.2012
Сообщений: 3,247
13.06.2013, 13:24
это всё из-за биндинга, попробуйте отвязать биндинг если новое начинаются вычисления
0
 Аватар для kodv
1449 / 1121 / 347
Регистрация: 11.04.2011
Сообщений: 2,621
13.06.2013, 14:52
Каким образом вы создаете биндинг? Что к чему биндите?
0
-15 / 10 / 6
Регистрация: 03.10.2012
Сообщений: 532
13.06.2013, 18:28
[Манул+Исходник]Клиент-сервер
Прочти данную тему... В данной теме я читаю и записываю в MYSQL удалённый данные ))

Поверь! Если правильно применить то всё получится...
0
0 / 0 / 0
Регистрация: 06.03.2016
Сообщений: 4
15.06.2013, 15:19
Спасибо всем, дело действительно в билдинге. Но помогло следующее. В начале метода button1_Click были введены переменные, которые дальше уже использовались в расчетах.

C#
1
2
3
4
5
6
7
8
9
// Расчет заправки
        private void button1_Click(object sender, EventArgs e)
        {
            decimal sumcost, sumlcost, lcost, plata, ldisc, rest, nrest, txtrest;
            decimal st;
 
                        var textbox1decimal = Convert.ToDecimal(textBox1.Text);
            var textbox3decimal = Convert.ToDecimal(textBox3.Text);
            var label6decimal = Convert.ToDecimal(label6.Text);
Рамиль.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
15.06.2013, 15:19
Помогаю со студенческими работами здесь

Ввод и сохранение данных в текстовом файле
Есть переменная S (integer), нужно записать её в текстовый файл txt если в файле число меньше переменной S. И ещё вопрос, как считать...

Ввод и сохранение данных в текстовом файле
есть программа для решения систем типа: a11x1+a12x2=b1 a21x1+a22x2=b2 надо сделать так,чтобы данные а11,а12, а21,а22,б1,б2 брались...

Ввод,вывод, сохранение данных в текстовом файле
Привет!Помогите начинающему! Я учусь сам дома,так что с терминологией не очень(. Как мне сохранить вывод данных в ТХТ файле:#include...

Программная прокрутка данных в текстовом поле и список.
Мне нужен большой шрифт. В список постоянно добавляются данные, но когда заполняется весь список, появляется полоса прокрутки. И только....

Программная прокрутка данных в текстовом поле и список.
Мне нужен большой шрифт. В список постоянно добавляются данные, но года заполняется весь список, появляется полоса прокрутки. Хочется,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru