Hah! :D Great minds think alike. That's exactly where the problem was.
After pulling my hair out for a while I realised that
1) The controls datasource is lost inbetween requests, meaning it must be re-pulling data
2) Stepping through the code for returning a normal set of issues didn't fail the 'if (RebindCommand != null)' condition in DisplayIssues.ascx.cs, whereas mine always did.
That lead me to find the code below,
private void InitializeComponent()
{
this.ctlDisplayIssues.RebindCommand += new System.EventHandler(IssuesRebind);
}
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
void IssuesRebind(Object s, EventArgs e)
{
ExecuteSearch();
}
when I copied it over to my search page, everything worked immediately. :D
Many thanks for the response, you were bang on the money. :)