我有一个文本框txtId和一个网格视图,网格视图根据提供的id显示数据。没关系,但每当我第二次提供Id时,网格都会加载新数据,而我之前的id数据已从gidview中删除
我想要这样的事情:
每当我输入Idsecond时间之前的数据已经消失,我想要新的数据,如上图所示。
下面是我使用eval绑定网格的网格视图:
<asp:GridView ID="GVProduct" CssClass="table table-hover" runat="server" AutoGenerateColumns="False" BackColor="White" BorderColor="#999999" BorderStyle="Solid" BorderWidth="1px" CellPadding="3" ForeColor="Black" GridLines="None" AllowPaging="True">
<AlternatingRowStyle BackColor="#CCCCCC" />
<Columns>
<asp:TemplateField HeaderText="Product Name">
<ItemTemplate>
<asp:Label ID="lblProductName" runat="server" Text='<%#Eval("ItemName") %>' ></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="CP">
<ItemTemplate>
<asp:Label ID="lblCP" runat="server" Text='<%#Eval("CostPrice") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
</asp:GridView>
这就是按钮点击时加载网格的方式:
protected void btnAdd_Click(object sender, EventArgs e)
{
int itemIds = Convert.ToInt32(txtPId.Text);
int qty = Convert.ToInt32(txtQty.Text);
if (txtPId.Text!=String.Empty || txtQty.Text != String.Empty)
{
DataTable dt = bllProduct.GetProductById(itemIds);
if (dt.Rows.Count>0)
{
GVProduct.DataSource = dt;
GVProduct.DataBind();
}
}
}
答案 0 :(得分:0)
我认为GetProductById(itemIds)
只返回一条记录,请在GetProductById
方法中检查您的选择查询。