2

我真的是新手,但是当我在设计器中定义列时,有人可以告诉我如何在 GridView 中添加值。我有一列 type Buttonfield。我的 default.asax 代码如下。

代码

    <asp:GridView ID="gvTableHolding" runat="server" BackColor="White" 
    BorderColor="#CCCCCC" BorderWidth="1px" CellPadding="3" Width="1184px" 
    BorderStyle="None" CssClass="DDGridView" 
        onrowcommand="gvTableHolding_RowCommand" ShowHeaderWhenEmpty="True"
        EmptyDataText=" No Data!" ViewStateMode="Enabled">

        <Columns>
            <asp:BoundField HeaderText="Holding Register " />
            <asp:BoundField HeaderText="Description" />
            <asp:BoundField HeaderText="Set Value" />
            <asp:ButtonField ButtonType="Button" ShowHeader="True" Text="ChangeValue" 
                CommandName="ChangeValue" HeaderText="Buttons" />
            <asp:BoundField HeaderText="Default Value" />
            <asp:BoundField HeaderText="Decimal" />
            <asp:BoundField HeaderText="Hex" />
        </Columns>

    <FooterStyle BackColor="White" ForeColor="#000066" />
    <HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" />
    <PagerStyle BackColor="White" ForeColor="#000066" 
        HorizontalAlign="Left" />
    <RowStyle ForeColor="#000066" HorizontalAlign="Center"/>
    <SelectedRowStyle BackColor="#669999" ForeColor="White" Font-Bold="True" />
    <SortedAscendingCellStyle BackColor="#F1F1F1" />
    <SortedAscendingHeaderStyle BackColor="#007DBB" />
    <SortedDescendingCellStyle BackColor="#CAC9C9" />
    <SortedDescendingHeaderStyle BackColor="#00547E" />
</asp:GridView>

先感谢您!

4

2 回答 2

2

我真的不知道你为什么要在按钮字段中显示列标题。您可以在标签内使用TemplateField& ,例如:ItemFieldColumn

<asp:TemplateField HeaderStyle-Font-Bold="true" HeaderText="Holding Register " Visible="false">
                    <ItemTemplate>
                        <asp:Label Text='<%# DataBinder.Eval(Container.DataItem, "Holding_Register")%>' ID="lblUserId"
                            runat="server"></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>
                <asp:TemplateField HeaderStyle-Font-Bold="true" HeaderText="Description" Visible="false">
                    <ItemTemplate>
                        <asp:Label Text='<%# DataBinder.Eval(Container.DataItem, "Description")%>' ID="lblUserId"
                            runat="server"></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>
于 2013-03-18T11:57:41.597 回答
1

DataField首先在每一列中定义。像这样 -

<Columns>
        <asp:BoundField HeaderText="Holding Register " DataField="Holding_Register"/>
        <asp:BoundField HeaderText="Description" DataField="Description"/>
</Columns>

然后将数据源与代码中的网格绑定。

gvTableHolding.DataSource = GetData();
gvTableHolding.DataBind();

您应该记住的一件事是,GetData()无论您返回什么(DataTable 或 List),这些属性名称都应该与DataField您在 Grid 中定义的名称匹配。

于 2013-03-18T11:58:27.740 回答