DataGridView特定列无法显示金额 [英] DataGridView Particular Column Cannot Display Amount

查看:95
本文介绍了DataGridView特定列无法显示金额的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

  Dim  strSQL17 作为  String  =   SELECT FeesType FROM FeeMaster WHERE Class ='& cboClass.Text&  ' '  ORDER BY FeesType Asc 
Dim DaAp17 As SqlDataAdapter(strSQL17,con)
Dim Dset17 正如 DataTable
DaAp17.Fill(Dset17)
Me .DataGridView2
.Columns.Add( Regno RegNo
.Columns.Add( Sname 名称
For i As Integer = 0 Dset17.Rows.Count - 1
.Columns.Add( Col1,Dset17.Rows(i).Item( FeesType))
下一步

结束 使用


Dim strSQL27 作为 字符串 = SELECT STUFF((SELECT DISTINCT',['+ FeesType +']'FROM FeeMaster WHERE Class ='& cboClass.Text& '对于XMl路径('')),1,1,'')
Dim DaAp27 作为 SqlDataAdapter(strSQL27) ,con)
Dim Dset27 作为 DataTable
DaAp27.Fill(Dset27)
Dim strSQL11 As < span class =code-keyword> String

strSQL11 = SELECT * FROM(SELECT Regno,FeeType,[Amount_Paid],[ST_Name] FROM Fees_Transaction)stdAdmission PIVOT(FeeType的Sum(Amount_Paid)in( + Dset27.Rows( 0) )。Item( Column1)+ ))作为PVTFT,其中Class ='& cboClass.Text& '


Dim DaAp11 作为 SqlDataAdapter(strSQL11,con)
< span class =code-keyword> Dim DSet11 As DataTable
DaAp11.Fill(DSet11)
DGV1.DataSource = DSet11


对于 每个 dr As DataRow In DSet11.Rows
.DataGridView2.Rows.Add()
使用 .DataGridView2.Rows( Me .DataGridView2.Rows.Count - 1


。细胞( Regno)。值= dr( Regno
.Cells( Sname).Value = dr( ST_Name



'这里我有问题无法在特定列上显示Amount_Paid。我如何获得



 对于 i 作为 整数 =  0    DataGridView2.ColumnCount  -   1  
.Cells( Col1)。值= dr( Amount_Paid
下一步
结束 使用
下一步



我怎样才能得到这样的DGV



Regno名称Team-1 Team-2 Total

A100 AAA 500 200 700

A200 BBB 200 0 200

A300 CCC 500 100 600



请告诉我..我该怎么做呢

解决方案

你有多个列  DataGridView2   name   Col1 更改
< ; pre lang = vb>
对于 i 作为整数= 0 Dset17.Rows.Count - 1
.Columns。添加 Col1,Dset17.Rows(i)。 Item( FeesType))
下一页





或设置索引的单元格值而不使用名称


Dim strSQL17 As String = "SELECT FeesType FROM FeeMaster WHERE Class='" & cboClass.Text & "'" ' ORDER BY FeesType Asc"
        Dim DaAp17 As New SqlDataAdapter(strSQL17, con)
        Dim Dset17 As New DataTable
        DaAp17.Fill(Dset17)
        With Me.DataGridView2
            .Columns.Add("Regno", "RegNo")
            .Columns.Add("Sname", "Name")
            For i As Integer = 0 To Dset17.Rows.Count - 1
                .Columns.Add("Col1", Dset17.Rows(i).Item("FeesType"))
            Next
           
        End With


        Dim strSQL27 As String = "SELECT STUFF((SELECT DISTINCT ',['+ FeesType +']' FROM FeeMaster WHERE Class='" & cboClass.Text & "' For XMl Path('')), 1, 1, '')"
        Dim DaAp27 As New SqlDataAdapter(strSQL27, con)
        Dim Dset27 As New DataTable
        DaAp27.Fill(Dset27)
        Dim strSQL11 As String

        strSQL11 = "SELECT * FROM (SELECT Regno, FeeType, [Amount_Paid],[ST_Name]  FROM Fees_Transaction) stdAdmission PIVOT (Sum(Amount_Paid) for FeeType in (" + Dset27.Rows(0).Item("Column1") + "))as PVTFT where Class='" & cboClass.Text & "'"


        Dim DaAp11 As New SqlDataAdapter(strSQL11, con)
        Dim DSet11 As New DataTable
        DaAp11.Fill(DSet11)
        DGV1.DataSource = DSet11


        For Each dr As DataRow In DSet11.Rows
            Me.DataGridView2.Rows.Add()
            With Me.DataGridView2.Rows(Me.DataGridView2.Rows.Count - 1)


                .Cells("Regno").Value = dr("Regno")
                .Cells("Sname").Value = dr("ST_Name")


‘ HERE I HAVE PROBLEM Cannot Show Amount_Paid on Particular Column. How Can I Get

         For i As Integer = 0 To DataGridView2.ColumnCount - 1
            .Cells("Col1").Value = dr("Amount_Paid")
        Next
    End With
Next


How Can i Get Like This DGV

Regno Name Team-1 Team-2 Total
A100 AAA 500 200 700
A200 BBB 200 0 200
A300 CCC 500 100 600

Please Tell me.. how can i do for This

解决方案

you have multiple columns on DataGridView2 with name "Col1", have to change
 <pre lang="vb"> 
For i As Integer = 0 To Dset17.Rows.Count - 1
     .Columns.Add("Col1", Dset17.Rows(i).Item("FeesType"))
Next



or set cell value for index and not use the name


这篇关于DataGridView特定列无法显示金额的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆