Data Binding ASP.Net

<%@ Page Language="C#" %>
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

    protected void grdProductCategories_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            int categoryId = (int)DataBinder.Eval(e.Row.DataItem,"Id");
            SqlDataSource srcProducts = (SqlDataSource)e.Row.FindControl("srcProducts");
            srcProducts.SelectParameters["CategoryId"].DefaultValue = categoryId.ToString();
        }
    }



    
    

            id="grdProducts"
        DataSourceID="srcProductCategories"
        OnRowDataBound="grdProductCategories_RowDataBound"
        AutoGenerateColumns="false"
        CssClass="categories"
        ShowHeader="false"
        GridLines="none"
        Runat="server">
        
        
        
            

<%# Eval("Name") %>


                            id="grdProducts"
                DataSourceId="srcProducts"
                CssClass="Products"
                GridLines="none"
                Runat="server" />
                            id="srcProducts"
                ConnectionString="<%$ ConnectionStrings:Products %>"
                SelectCommand="SELECT Title,Director FROM Products
                    WHERE CategoryId=@CategoryId"
                Runat="server">
                
                    
                

            
        

        

        

    
            id="srcProductCategories"
        ConnectionString="<%$ ConnectionStrings:Products %>"
        SelectCommand="SELECT Id,Name FROM ProductCategories"
        Runat="server" />
    

    


File: Web.config

  
             connectionString="Data Source=.\SQLEXPRESS;
         AttachDbFilename=|DataDirectory|MyDatabase.mdf;Integrated Security=True;User Instance=True" />