我试图使用ASP:GridView Control在我的网页上显示一些细节。因此,我添加了我需要显示的列。但是,每个列在GridView中显示两次(Pic)。
后端代码如下:
objVendor = client.GetAllVenorsForPCMS();
if (objVendor.Count > 0)
{
gvVendorsDetails.DataSource = objVendor;
gvVendorsDetails.DataBind();
}
else
{
gvVendorsDetails.DataSource = null;
gvVendorsDetails.DataBind();
}
和aspx代码如下:
<div align="center" style="border: 1px solid;">
<asp:GridView ID="gvVendorsDetails" runat="server" CssClass="mGrid">
<Columns>
<asp:BoundField HeaderText="Vendor ID" DataField="VendorID" Visible="false" />
<asp:BoundField HeaderText="Vendor Name" DataField="VendorName" Visible="true" />
<asp:BoundField HeaderText="Vendor Description" DataField="VendorDescription" Visible="true" />
<asp:BoundField HeaderText="Address" DataField="Address" Visible="true" />
<asp:BoundField HeaderText="City" DataField="City" Visible="true" />
<asp:BoundField HeaderText="State" DataField="State" Visible="true" />
<asp:BoundField HeaderText="Country" DataField="Country" Visible="true" />
<asp:BoundField HeaderText="Contact Person" DataField="ContactPerson" Visible="true" />
<asp:BoundField HeaderText="Contact No" DataField="ContactNo" Visible="true" />
<asp:BoundField HeaderText="ZIP Code" DataField="ZIPCode" Visible="true" />
</Columns>
</asp:GridView>
</div>
我只添加了一次列,但结果列中的结果如何显示两次!! ?
答案 0 :(得分:9)
这是一个常见原因,因为您还将AutoGenerateColumns属性设置为true(这是默认值)。 通过将该属性设置为false,可以将生成的列限制为您明确指定的列。
即。解决这个问题:
<asp:GridView ID="gvVendorsDetails" runat="server"
CssClass="mGrid" AutoGenerateColumns="False">
<Columns> ...