Click here to Skip to main content
15,886,963 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
I have a search box in a master page that displays the result in a gridview. I am wondering if it is possible to show this result table items in my model view.

What I have tried:

Masterpage:
public string searchWord1OnMasterPage
    {
        get { return this.txtName.Text; }
    }


Index.aspx:
<asp:Label ID="lblSearch" runat="server" Text=""></asp:Label>


  <asp:GridView ID="grdSearch" runat="server" BackColor="#072040" Font-Size="Small" ForeColor="White" style="margin-left: 0px; padding-left: 0px" OnRowDataBound = "OnRowDataBound" OnSelectedIndexChanged="OnSelectedIndexChanged">         
  </asp:GridView>


Index aspx.cs:
protected void btnSearch_Click(object sender, EventArgs e)
    {
        GetData(Master.searchWord1OnMasterPage, Master.searchWord2OnMasterPage, Master.searchWord3OnMasterPage, Master.searchWord4OnMasterPage);
    }

private void FillPage()
{

    //Get a list of all products in DB
    ProductModel productModel = new ProductModel();
    List<Product> products = productModel.GetAllProducts();

//Make sure products exist in the database
if (products != null)
    {

//Create a new panel wit an ImageButton and 2 labels for each product
foreach (Product product in products)
       {
           Panel productPanel =new Panel();
           ImageButton imageButton = new ImageButton();


    //Set child Controls properties
           imageButton.ImageUrl = "pages/Management/Images/Products/" + product.Image;
           imageButton.CssClass = "productImage";
           imageButton.PostBackUrl = "~/pages/Product.aspx?id=" + product.ID;

           lblName.Text = product.Name;
           lblName.CssClass = "productName";

           lblPrice.Text = "₦" + product.Price;
           lblPrice.CssClass = "productPrice";

           // Add child control to panelt
           productPanel.Controls.Add(imageButton);
           productPanel.Controls.Add(new Literal {Text = "<br />"});
           productPanel.Controls.Add(lblName);
           productPanel.Controls.Add(new Literal {Text = "<br />"});
           productPanel.Controls.Add(lblPrice);

           // Add dynamic Panels to static Parent panel
           pnlProducts.Controls.Add(productPanel);

        }
    }
else
     {
        //No products found
         pnlProducts.Controls.Add(new Literal { Text = "No products found!" });
     }
Posted

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900