LinkButton and User Control Error
<p>I have a user control, which consists of a gridview and link button. The problem being, the link button won't work! Can someone please have a look and show me why and how to solve it please!</p>

<pre><code>public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        var model = new List&lt;UserControlProof.Model.Customer&gt; {
            new UserControlProof.Model.Customer { 
                Name = "Customer1", address = "Addr1" }),
            new UserControlProof.Model.Customer { 
                Name = "Customer2", address = "Addr1" }),
            new UserControlProof.Model.Customer { 
                Name = "Customer3", address = "Addr2" }),
            new UserControlProof.Model.Customer { 
                Name = "Customer4", address = "Addr3" }) };

        var Addr = (from m in model select m.address).Distinct();
        foreach (string addr in Addr)
        {
            var cr = (UserControlProof.Controls.CollapseableRecordset)LoadControl(
                "Controls//CollapseableRecordset.ascx");
            cr.ID = cr.UniqueID;
            form1.Controls.Add(cr);
            cr.DisplayName = Addr;
            var filterredAddress = from m in model where m.address == addr select m;
            cr.DataSource = filterredAddress;
            cr.Count = filterredAddress.Count(); 

            if (cr.Count == 1) 
            {
                cr.ViewCustomers = true;
            }
            cr.DataBind();

            form1.Controls.Add(new Literal() { Text = "&lt;br /&gt;" });
        }
    }
}

public partial class CollapseableRecordset : System.Web.UI.UserControl
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            GridView1.Columns.Clear();

            BoundField f1 = new BoundField();
            f1.DataField = "Customer";
            f1.ShowHeader = false;
            GridView1.Columns.Add(f1);
        }
    }

    //private string displayName;
    public string DisplayName
    {
        get
        {
            EnsureChildControls();
            return LabelName.Text;
            //return displayName;
        }
        set
        {
            EnsureChildControls();
            LabelName.Text = value;
            //displayName = value;
        }
    }

    //private int count;
    public int Count
    {
        get
        {
            EnsureChildControls();
            return int.Parse(LabelCount.Text);
            //return count;
        }
        set
        {
            EnsureChildControls();
            LabelCount.Text = value.ToString();
            //count = value;
        }
    }

    //private bool ViewCustomers;
    public bool ViewCustomers
    {
        get
        {
            EnsureChildControls();
            return Link1.Visible;
        }
        set
        {
            EnsureChildControls();
            Link1.Visible = value;
        }
    }

    public object DataSource
    {
        get
        {
            EnsureChildControls();
            return GridView1.DataSource;
        }
        set
        {
            EnsureChildControls();
            GridView1.DataSource = value;
        }
    }


    protected void Link1_Click(object sender, EventArgs e)
    {
        Label1.Visible = true;
    }
}

&lt;%@ Control Language="C#" AutoEventWireup="true" CodeBehind="CollapseableRecordset.ascx.cs" Inherits="UserControlProof.Controls.CollapseableRecordset" %&gt;
&lt;%@ Register Assembly="Microsoft.Practices.Web.UI.WebControls" Namespace="Microsoft.Practices.Web.UI.WebControls"
TagPrefix="pp" %&gt;
&lt;asp:Label ID="LabelName" runat="server" Text="Name"&gt;&lt;/asp:Label&gt;
&amp;nbsp;&lt;asp:Label ID="LabelCount" runat="server" Text="Count"&gt;&lt;/asp:Label&gt;
&lt;asp:Panel ID="Panel1" runat="server"&gt;
&lt;asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" 
ShowHeader="False"&gt;
&lt;/asp:GridView&gt;
&lt;br /&gt;
&lt;asp:Label ID="Label1" runat="server" Text="Label" Visible="false"&gt;&lt;/asp:Label&gt;

&lt;/asp:Panel&gt;
&lt;asp:LinkButton ID="Link1" runat="server" Text="View All"&gt;&lt;/asp:LinkButton&gt;

public class Customer
{
    public string Name { get; set; }
    public string address { get; set; }
}
</code></pre>
