投稿者 コロン  (社会人) 投稿日時 2019/12/8 23:01:59
るきお様 

大変ご丁寧にご教示いただき、有難うございます。
また、質問の際に不明瞭な点があったようで申し訳ございません。
本来、私の分からなかった点としましては、グリッド初期表示時の総合計を保持することは可能だが
フィルターをかけて値を変更した際、その変更した値をどのように反映すべきか という点でしたが
根本的にViewという仕組みを理解できていないことが問題でした

また、折角VisualStudio2019にてサンプルコードを作って下さりましたが、私の環境はBisualStudio2012
でして、そのままでは動かなかったので少し改変させていただきました。
この件に関しても環境の記述がなかったためにご迷惑をおかけしていまい申し訳ありません。
以後気を付けます。

以下、改変させていただいた部分のみ記載いたします。


  ''' <summary> 
    ''' 合計金額と合計消費税額をLabelに表示します。 
    ''' </summary> 
    Private Sub RefreshAmount()
        Call Summary()
    End Sub

    ''' <summary> 
    ''' 合計金額と合計消費税額を計算します。 
    ''' </summary> 
    Private Sub Summary()

        Dim totalKingaku As Integer
        Dim totalZeigaku As Integer
        Dim dt As DataTable = Nothing
        Dim i As Integer = 0

        dt = DirectCast(DataGridView1.DataSource, DataView).Table

        For i = 0 To dt.Rows.Count - 1
            totalKingaku = totalKingaku + CInt(dt.Rows(i).Item("金額").ToString)
            totalZeigaku = totalZeigaku + CInt(dt.Rows(i).Item("消費税額").ToString)
        Next

        Label1.Text = totalKingaku.ToString
        Label2.Text = totalZeigaku.ToString
    End Sub



フィルターをかけるとViewになるが、変更はTableにも反映されるということを学べて大変勉強になりました。
重ね重ねになりますが、本当にありがとうございました。