VB.NET中ReportViewer/rdlc列未全部显示问题求解
VB.NET中ReportViewer/rdlc报表列未全部显示的问题
在VB.NET开发中使用ReportViewer和rdlc报表时,遇到报表列未全部显示的问题,已编写如下代码但仍无法解决,现寻求其他可行方法:
Public Class Form2 Dim tps As New Tableproductservice() Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click Dim form2 = New Form3() Dim rds = New ReportDataSource("DataSet1", tps.Loaddata("A")) form2.ReportViewer1.LocalReport.DataSources.Clear() form2.ReportViewer1.LocalReport.DataSources.Add(rds) form2.ReportViewer1.LocalReport.ReportEmbeddedResource = "transposerowtocolumnsqlmsaccessvbnet.Report1.rdlc" form2.ShowDialog() End Sub Public Class Tableproductservice Private connectionString As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\transposerowtocolumnsqlmsaccessvbnet.accdb;Persist Security Info=False" Dim sql = <sql> TRANSFORM Sum(Tableproduct.[Qty]) AS SumOfQty SELECT Tableproduct.Codeproduct AS [CodeProduct], Tableproduct.Colour AS [Colour],Sum(Tableproduct.Qty) AS [Total] FROM Tableproduct INNER JOIN SizeProduct ON Tableproduct.Size = SizeProduct.Size WHERE Tableproduct.Codeproduct = ? GROUP BY Tableproduct.Codeproduct, Tableproduct.Colour PIVOT SizeProduct.Size; </sql>.Value Using _conn = New OleDbConnection(connectionString) Return _conn.Query(Of Tableproduct)(sql, New With {Key .CodeProduct = CodeProduct}).ToList() End Using End Function End Class Public Class Tableproduct Public Property CodeProduct() As String Public Property Colour() As String Public Property S() As Integer Public Property M() As Integer Public Property L() As Integer Public Property XL() As Integer Public Property Total() As Integer End Class Public Class SizeProduct Public Property Size() As String Public Property Sequence() As Integer End Class
当前运行效果
- 产品编码A的报表显示:![产品编码A在Printviewer-rdlc中的显示效果]
- 产品编码B的报表显示:![产品编码B在Printviewer-rdlc中的显示效果]
期望效果
产品编码A时:
| 产品编码 | 颜色 | S | M | L | 总计 |
|---|---|---|---|---|---|
| A | Black | 20 | 20 | ||
| A | White | 15 | 10 | 25 |
产品编码B时:
| 产品编码 | 颜色 | S | XL | 总计 |
|---|---|---|---|---|
| B | Blue | 20 | 20 | |
| B | White | 15 | 15 |
内容的提问来源于stack exchange,提问作者user22579796
相关产品推荐
相关产品推荐

