数据网格视图中的数据绑定问题
本文关键字:数据绑定 问题 视图 数据网 网格 数据 | 更新日期: 2023-09-27 18:34:16
实际上,说问题可能是错误的。我有 2 页。我可以从第一页获取第二页的查询字符串。这个查询字符串是我查询的关键部分。在调试模式下,我可以看到查询结果,它们将是我想要的。但它不能显示在我的网格视图上。这是我的代码块:我的客户列表页面,
public partial class CustomerList : System.Web.UI.Page
{
CustomerBusiness m_CustomerBusiness = new CustomerBusiness();
COMPANY m_Company = new COMPANY();
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
BindCustomers();
}
}
private void BindCustomers()
{
string CompanyName = Request.QueryString.Get("CompanyName");
LabelCompanyName.Text = CompanyName;
List<CUSTOMER> CustomerListt = m_CustomerBusiness.SelectByFirmName(CompanyName);
GridViewCustomerList.DataSource = CustomerListt;
GridViewCustomerList.DataBind();
}
}
网格视图客户列表:
<asp:GridView ID="GridViewCustomerList" runat="server"
AutoGenerateColumns="False" BackColor="White" BorderColor="#999999"
BorderStyle="None" BorderWidth="1px" CellPadding="3" GridLines="Vertical"
ondatabinding="GridViewCustomerList_DataBinding"
onselectedindexchanged="GridViewCustomerList_SelectedIndexChanged"
Width="239px">
<AlternatingRowStyle BackColor="#DCDCDC" />
<FooterStyle BackColor="#CCCCCC" ForeColor="Black" />
<HeaderStyle BackColor="#000084" Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="#999999" ForeColor="Black" HorizontalAlign="Center" />
<RowStyle BackColor="#EEEEEE" ForeColor="Black" />
<SelectedRowStyle BackColor="#008A8C" Font-Bold="True" ForeColor="White" />
<SortedAscendingCellStyle BackColor="#F1F1F1" />
<SortedAscendingHeaderStyle BackColor="#0000A9" />
<SortedDescendingCellStyle BackColor="#CAC9C9" />
<SortedDescendingHeaderStyle BackColor="#000065" />
</asp:GridView>
客户列表是我想要的,但我的绑定部分不起作用,当我运行项目时我看不到 GridView客户列表。我研究了一些 asp.net 页面生命周期模型的东西,目标解决方案可能与此相关。
这里的问题是你的标记中没有明确的<Column>
声明,并且你AutoGenerateColumns
属性设置为"false"。 因此,即使数据绑定到 GridView 控件,它也不知道要显示的内容(因此它不显示任何内容)。
这里最简单的解决方案是从 GridView 声明中删除AutoGenerateColumns="False"
(默认情况下为"true"),您应该很高兴。 它将根据您的数据源自动创建列。
或者,可以通过向 GridView 添加列部分来指定所需的列。
<columns>
<asp:boundfield datafield="columnOne" headertext="Column 1"/>
<asp:boundfield datafield="columnTwo" headertext="Column 2"/>
<asp:boundfield datafield="columnThree" headertext="Column 3"/>
</columns>
</asp:GridView>