powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / как обратиться к значению полей грида
11 сообщений из 61, страница 3 из 3
как обратиться к значению полей грида
    #32626987
irinka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
:)
Спешу сообщить, что если повесить этот обработчик на кнопку, то все работает.
Ест-но, что на кнопке это было для проверки, на какое же событие нужно повесить этот обработчик, чтоб все было ок?
...
Рейтинг: 0 / 0
как обратиться к значению полей грида
    #32627001
irinka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
хочу дополнить вот что...
последовательность действий такова:
изменяю кол-во, перехожу в др поле, значение сумма для строки пересчитывается, затем нажимаю на кнопку, где висит обработчик все что связано с Update и только после этого нажимаю на кнопку, на которой висит известный нам обработчик для пересчета и занесения итоговой суммы в текстбокс.
...
Рейтинг: 0 / 0
как обратиться к значению полей грида
    #32627010
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
хочу дополнить вот что...
последовательность действий такова:
изменяю кол-во, перехожу в др поле, значение сумма для строки пересчитывается, затем нажимаю на кнопку, где висит обработчик все что связано с Update и только после этого нажимаю на кнопку, на которой висит известный нам обработчик для пересчета и занесения итоговой суммы в текстбокс.

было бы хорошо подкрепить все эти шаги соответсвующим кодом, как бы резюмируя и фокусируя полученные итоги.
Тогда нам станет понятно где мы находимся и с каким кодом сейчас работаем.

Код: plaintext
 uid  =  S a
...
Рейтинг: 0 / 0
как обратиться к значению полей грида
    #32627295
irinka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Public Sub MyColumnChanged(ByVal sender As Object, ByVal e As System.Data.DataColumnChangeEventArgs)
        If e.Column.ColumnName.Equals("position_kolichestvo") OrElse e.Column.ColumnName.Equals("position_price") Then
            If (Not e.Row.IsNull("position_kolichestvo")) AndAlso (Not e.Row.IsNull("position_price")) Then
                e.Row("position_stoim") = CType(e.Row("position_kolichestvo"), Decimal) * CType(e.Row("position_price"), Decimal)
              End If
        End If

End Sub

Далее Update (код был сформирован визардом)
и нажатие кнопки:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim mysqlcmd As New System.Data.SqlClient.SqlCommand()
        mysqlcmd.Connection = SqlConnection1
        mysqlcmd.CommandType = CommandType.Text
        mysqlcmd.CommandText = "select sum(position_stoim*position_kurs_currency) as total_sum from tpositions where document_id=@document_id"
        mysqlcmd.Parameters.Add("@document_id", SqlDbType.Int,  0 )
        Dim cm As CurrencyManager = CType(BindingContext(grdTPositions.DataSource, grdTPositions.DataMember), CurrencyManager)
        Dim rv As DataRowView = CType(cm.Current, DataRowView) 'вот это текущая строка грида
        mysqlcmd.Parameters("@document_id").Value = rv("document_id")
        editdocument_stoim_itogo.Text = CType(mysqlcmd.ExecuteScalar, String)
        'Dim myObject As Object = mysqlcmd.ExecuteScalar()
        'MsgBox(CType(myObject, String))
    End Sub
...
Рейтинг: 0 / 0
как обратиться к значению полей грида
    #32628369
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) Пока не ясно для чего тут использовать Update,

2) Покажите структуру таблиц, с которыми работаете в данном примере

Код: plaintext
 uid  =  S a
...
Рейтинг: 0 / 0
как обратиться к значению полей грида
    #32628651
irinka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Update здесь использовать для того, чтобы зафиксировать изменения, потому как только после этого они отобразятся в базе и только после этого в результате пересчета для всех строк выдается верный рез-т (с учетом только что сделанных изменений в одной из строк)
...
Рейтинг: 0 / 0
как обратиться к значению полей грида
    #32628688
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Update здесь использовать для того, чтобы зафиксировать изменения, потому как только после этого они отобразятся в базе и только после этого в результате пересчета для всех строк выдается верный рез-т (с учетом только что сделанных изменений в одной из строк)

А разве эти данные уже не присутствуют в DataSet?
Покажите структуру DataSet и структуру таблиц.
Я хочу разобраться почему необходимо лишний раз обращаться к БД, обычно этого можно избежать.

Код: plaintext
 uid  =  S a
...
Рейтинг: 0 / 0
как обратиться к значению полей грида
    #32628787
irinka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Этот текст не предполагает обращение к Сету, он предполагает обращение к самой базе, это я вчера вроде прочитала
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim mysqlcmd As New System.Data.SqlClient.SqlCommand()
        mysqlcmd.Connection = SqlConnection1
        mysqlcmd.CommandType = CommandType.Text
        mysqlcmd.CommandText = "select sum(position_stoim*position_kurs_currency) as total_sum from tpositions where document_id=@document_id"
        mysqlcmd.Parameters.Add("@document_id", SqlDbType.Int,  0 )
        Dim cm As CurrencyManager = CType(BindingContext(grdTPositions.DataSource, grdTPositions.DataMember), CurrencyManager)
        Dim rv As DataRowView = CType(cm.Current, DataRowView) 'вот это текущая строка грида
        mysqlcmd.Parameters("@document_id").Value = rv("document_id")
        editdocument_stoim_itogo.Text = CType(mysqlcmd.ExecuteScalar, String)
        'Dim myObject As Object = mysqlcmd.ExecuteScalar()
        'MsgBox(CType(myObject, String))
    End Sub

...
Рейтинг: 0 / 0
как обратиться к значению полей грида
    #32628911
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это понятно, остается главный вопрос, неужели нет данных в DataSet для вычисления sum(position_stoim*position_kurs_currency) ???


Код: plaintext
 uid  =  S a
...
Рейтинг: 0 / 0
как обратиться к значению полей грида
    #32629289
irinka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ааа
так в том-то и дело, что они там есть, просто я знала только этот способо, поэтому так и заморочилась, если тоже можно сделать с пом сета, это было бы даже проще
...
Рейтинг: 0 / 0
как обратиться к значению полей грида
    #32630198
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sa
А разве эти данные уже не присутствуют в DataSet?
Покажите структуру DataSet и структуру таблиц.


Код: plaintext
 uid  =  S a
...
Рейтинг: 0 / 0
11 сообщений из 61, страница 3 из 3
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / как обратиться к значению полей грида
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]