Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net VB.NET在GridView中创建其他列_Asp.net_Vb.net_Gridview - Fatal编程技术网

Asp.net VB.NET在GridView中创建其他列

Asp.net VB.NET在GridView中创建其他列,asp.net,vb.net,gridview,Asp.net,Vb.net,Gridview,我试图将数据添加到我在gridview中创建的新列中。我使用以下代码创建列: Dim Field As New BoundField Field.HeaderText = "Cummulative Amount" Dim Col As DataControlField = Field Me.GridView1.Columns.Add(Col) 现在我需要进去为列下面的行添加数据。我看到ppl说我需要将它设置为一个数据字段,但是我如何从头创建一个数据字段呢 提前感谢,是的,人们告诉了您正确的事情

我试图将数据添加到我在gridview中创建的新列中。我使用以下代码创建列:

Dim Field As New BoundField
Field.HeaderText = "Cummulative Amount"
Dim Col As DataControlField = Field
Me.GridView1.Columns.Add(Col)
现在我需要进去为列下面的行添加数据。我看到ppl说我需要将它设置为一个数据字段,但是我如何从头创建一个数据字段呢


提前感谢,

是的,人们告诉了您正确的事情-您需要设置BoundField的
数据字段
属性才能呈现它。您的数据字段将是由您绑定GridView的数据源公开的公共属性

作为补充,您不需要创建
DataControlField
,因为
BoundField
类继承自
DataControlField
。您可以直接将
BoundField
添加到GridView的Columns集合中

Dim Field As New BoundField()
Field.HeaderText = "Cumulative Amount"
Field.DataField = "CumulativeAmount"

Me.GridView1.Columns.Add(Field)

更新:

可以在gridview的标记中创建此计算列。假设您的数据源有一个名为“Amount”的字段和另一个名为“Quantity”的字段,并且您的“累积金额”是这两列的乘积,您可以执行以下操作:

<asp:GridView runat="server" DataSource="sqlDataSource">
  <columns>
    <asp:BoundField HeaderText="Amount" DataField="Amount" />
    <asp:BoundField HeaderText="Quantity" DataField="Quantity" />
    <asp:TemplateField HeaderText="Cummulative Amount">
      <ItemTemplate>
        <asp:Label runat="server" Text='<%# Eval("Amount") * Eval("Quantity") %>' />
      </ItemTemplate>
    </asp:TemplateField>
  </columns>
</asp:GridView>


是的,这正是我要做的。其他列是自动生成的还是通过标记添加的?我使用了gridview向导。它们都是从数据库中存储的表中创建的。我需要创建这些列,这些列是根据行中它前面的字段计算的值。我知道AutoGenerateColumns属性设置为false。非常感谢您的帮助,最后一个问题。如果我需要从当前行上方的行获取数据,我将如何实现这一点?例如,如果我想要一个名为Total Expense的列,并且其单元格中的数据是已用列下所有行(包括放置该列的行)的累积相加?