2014-09-26 132 views
0

我想從一個單獨的模塊中填充一個數據網格。我必須錯過一些非常簡單的事情,但我似乎無法找到問題所在。沒有數據顯示在我的網格中。從模塊中填充數據網格

Public Sub FilldgvChargesPerContract(ByVal TelNr As String) 
    'opvullen van de overzichtsgrid Charges Per Contract 
    Dim strSQL As String = "" 
    Dim oDR As SqlClient.SqlDataReader = Nothing 

    strSQL = " SELECT INVOICEPERIOD AS PERIOD, CATEGORY, SERVICE,AMOUNT FROM MOBILECOSTS_MOBISTAR_CHARGESPERCONTRACT WHERE PHONENR = '" & TelNr & "' AND DATEFROM > '1900-01-01' ORDER BY SERVICE DESC " 

    Dim connection As New SqlConnection(SQLConnectstring) 
    Dim dataadapter As New SqlDataAdapter(strSQL, connection) 
    Dim ds As New DataSet() 
    connection.Open() 
    dataadapter.Fill(ds, "MOBILECOSTS_MOBISTAR_CHARGESPERCONTRACT") 
    connection.Close() 
    frmMobileCosts.dgvChargesPerContract.DataSource = ds 
    frmMobileCosts.dgvChargesPerContract.DataMember = "MOBILECOSTS_MOBISTAR_CHARGESPERCONTRACT" 
    frmMobileCosts.dgvChargesPerContract.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill 
    'dgvOverviewNew.TopLeftHeaderCell.Value = "reset" 
    frmMobileCosts.dgvChargesPerContract.TopLeftHeaderCell.Style.ForeColor = System.Drawing.Color.Blue 

    'Laatste kolom uitbreiden voor het opvullen van de hele grid en alle andere cellen net groot genoeg voor inhoud 
    frmMobileCosts.dgvChargesPerContract.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells 
    frmMobileCosts.dgvChargesPerContract.Columns("AMOUNT").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill 

End Sub 

回答

0

看起來你錯過下面的行...

frmMobileCosts.dgvChargesPerContract.DataBind() 

如果做不到這一點,你可能希望模塊中的方法返回生成DataSet,然後數據綁定它到DataGridView代之以在frmMobileCosts上的函數調用。