[英]VB.Net Web Application how to add a column below a column on a GridView
如何在另一列下添加一列,以便在進行查詢輸出時在同一行中有兩個輸出值? 在我的情況下,我想顯示 Emp ID,在該列下我想顯示 Cust ID,以便 GridView 表看起來像這樣
Emp ID, Rgst ID, Line #, Disc CD, Auth Emp ID, Orig Prc, Disc Amt, Disc Pct, GL Acc ID
客戶編號
另一個問題是如何在“原始 Prc”輸出的末尾添加一列或標題作為總計並將所有“原始 Prc”相加到總計,以便它可以在與“原始 Prc”相同的列中輸出結果? 所以它看起來像這樣:
原中國
原始 prc 輸出
全部的
輸出是所有 orig prc 輸出的總和
這可以用當前的方法完成還是我改變了我如何在 ViewGrid 上輸出數據的方法?
這是我當前的代碼:
Protected Sub ExecuteButton_Click(sender As Object, e As EventArgs) Handles ExecuteButton.Click
Dim StoreID As Integer
Dim TransID As Integer
Dim RgstID As Integer
Dim dt As DataTable
If Not Integer.TryParse(StoreIDTextbox.Text, StoreID) Then
MsgBox("Invalid input. Please enter both Store ID and Transaction ID.")
Exit Sub
End If
If Not Integer.TryParse(TransactionIDTextbox.Text, TransID) Then
MsgBox("Invalid input. Please enter both Store ID and Transaction ID.")
Exit Sub
End If
Sql.AddParam("@Str_ID", StoreID)
Sql.AddParam("@Tran_ID", TransID)
'Rgst_ID Validation
If RegisterIDTextbox.Text.Length = 0 Then
SQL.AddParam("@Rgst_ID", "")
ElseIf RegisterIDTextbox.Text.Length > 0 Then
RgstID = Integer.Parse(RegisterIDTextbox.Text)
Sql.AddParam("@Rgst_ID", RgstID)
End If
Try
dt = SQL.ExecQuery("Select H.Emp_ID, H.Cust_ID, H.Rgst_ID, D.TRAN_LN_NUM, D.DISC_CD, D.AUTH_EMP_ID, D.ORIG_PRC, D.DISC_AMT, D.DISC_PCT, D.GL_ACCT_ID
From Transaction_Header H
INNER Join LN_Detail L On (H.Str_ID = L.Str_ID And H.Rgst_ID = L.Rgst_ID And H.Tran_ID = L.Tran_ID)
INNER Join LN_Discount D ON (L.Str_ID = D.Str_ID And L.Rgst_ID = D.Rgst_ID And L.Tran_ID = D.Tran_ID And L.Tran_LN_Num = D.Tran_LN_Num)
WHERE(H.Str_ID = @Str_ID)
And (H.Tran_ID = @Tran_ID)
And ((H.Rgst_ID = @Rgst_ID) Or (@Rgst_ID Is NULL Or @Rgst_ID = ''))")
Catch ex As Exception
MsgBox(ex.Message)
Exit Sub
End Try
GridView2.DataSource = dt
GridView2.DataBind()
TimeLabel.Text = DateAndTime.Now
網格視圖
<asp:GridView ID="GridView2" runat="server" AutoGenerateColumns ="False" CellPadding="4" ForeColor="#333333">
<AlternatingRowStyle BackColor="White" />
<Columns>
<asp:BoundField DataField="Emp_ID" HeaderText="Emp ID" />
<asp:BoundField DataField="Cust_ID" HeaderText="Cust ID" />
<asp:BoundField DataField="Rgst_ID" HeaderText="Rgst ID" />
<asp:BoundField DataField="TRAN_LN_NUM" HeaderText="Line #" />
<asp:BoundField DataField="DISC_CD" HeaderText="Disc CD" />
<asp:BoundField DataField="AUTH_EMP_ID" HeaderText="Auth Emp ID" />
<asp:BoundField DataField="ORIG_PRC" HeaderText="Orig Prc" />
<asp:BoundField DataField="Disc_Amt" HeaderText="Disc Amt" />
<asp:BoundField DataField="Disc_Pct" HeaderText="Disc Pct" />
<asp:BoundField DataField="GL_ACCT_ID" HeaderText="GL Acct ID" />
</Columns>
在您的 GridView 標記中使用 TemplateColumns 代替,這將為您提供所需的靈活性,例如
<asp:TemplateColumn>
<HeaderTemplate>
<b> Tax </b>
</HeaderTemplate>
<ItemTemplate>
<asp:Label
Text='<%# DataBinder.Eval(Container.DataItem, "Tax") %>'
runat="server"/>
</ItemTemplate>
<EditItemTemplate>
<asp:CheckBox
Text="Taxable"
runat="server"/>
</EditItemTemplate>
<FooterTemplate>
<asp:HyperLink id="HyperLink1"
Text="Microsoft"
NavigateUrl="http://www.microsoft.com"
runat="server"/>
</FooterTemplate>
</asp:TemplateColumn>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.