2013-07-16 20 views
0

我有這個代碼,我已經嘗試調試,沒有其他問題,但只有一件事我不知道是如何通過Gridview「aT」讀取下一行我從一個SQL查詢結果loop throw gridview1 rows添加內容在其他gridview2

For Each aR As DataRow In aT.Rows 
     Dim AltRow As DataRow = AltTbl.NewRow 
     AltRow.Item(0) = aR.Item("OXLINC") 
     AltRow.Item(1) = aR.Item("OXPART") 
     AltRow.Item(2) = FormatCurrency(aR.Item("OXLSTP")) 
     AltRow.Item(3) = FormatCurrency(aR.Item("OXCOST")) 
     AltRow.Item("QtyRA") = QtyR 
     AltRow.Item(5) = aR.Item("OXQTYA") 
     AltRow.Item(8) = r.RowIndex 
     AltRow.Item(9) = MFG 
     AltTbl.Rows.Add(AltRow) 
    Next 

    If AltTbl.Rows.Count > 0 Then 
     GridView10.DataSource = AltTbl 
     GridView10.DataBind() 
     GridView10.Visible = True 
     GridView7.Visible = False 
    End If 

    For Each gR As GridViewRow In GridView10.Rows 
     Dim sR As DataRow = aT.Rows(0) //Dont know what to do here 
     Dim WhseTbl As New DataTable 
     WhseTbl.Columns.Add("WhseID") 
     WhseTbl.Columns.Add("Qty") 
     For i = 1 To 10 
      If RTrim(sR.Item("OXBR" & i)) <> "" Then 
       Dim wR As DataRow = WhseTbl.NewRow 
       wR.Item(0) = sR.Item("OXBR" & i) 
       wR.Item(1) = sR.Item("OXAV" & i) 
       WhseTbl.Rows.Add(wR) 
       gR.BackColor = Drawing.Color.Yellow 
      End If 
     Next 
     If WhseTbl.Rows.Count > 0 Then 
      Dim whseG As GridView = gR.FindControl("WhGrid") 
      whseG.DataSource = WhseTbl 
      whseG.DataBind() 
     Else 
      gR.Cells(6).Text = "Not Available" 
     End If 
     If sR.Item("OXQTYA") >= 1 Then 
      gR.BorderColor = Drawing.Color.GreenYellow 
     End If 
    Next 

它只讀第一行我知道它明顯,但我需要幫助。我想知道我可以替換成

感謝

回答

0

爲什麼不使用相同的DataSource每個在GridView控件,然後處理RowDataBound事件第二GridView控件做任何格式(顏色,自定義文本等),您需要爲每列,根據業務規則(即QXQTYA大於1)?

標記:

<asp:gridview id="GridViewB" 
    onrowdatabound="GridViewB_RowDataBound" 
    runat="server"> 
</asp:gridview> 

代碼隱藏:

Sub CustomersGridView_RowDataBound(ByVal sender As Object, ByVal e As GridViewRowEventArgs) 
    If e.Row.RowType = DataControlRowType.DataRow Then 
     ' Do custom logic here per column 
    End If 
End Sub 
+0

呀那是一個好主意,我應該嘗試..謝謝

您可以通過執行以下處理RowDataBound事件。但我只是想一個一個的閱讀該行,以在父級gridview行的單元格內添加新的gridview。 –

+0

我發現其他方式太 我剛初始化索引'昏暗IND爲整數= 0'然後只需添加更多的線孔'next' IND = IND + 1 接着 ,只有這樣,我想出做,但我仍然相信應該有另一種方式來做到這一點。更好的方法 –

相關問題