Text;
}
set
{
EnsureChildControls();
searchTextBox.Text = value;
}
}
///
/// Redirect search query to Live Search site web pages.
/// [DescriptionAttribute("Redirect search query to Live Search site web pages."),
CategoryAttribute("Search")]
virtual public bool RedirectToLiveSearch
{
get
{
object redirect = ViewState["RedirectToLiveSearch"];
if (redirect == null)
return DefaultRedirectToLiveSearchValue;
else
return (bool)redirect;
}
set
{
ViewState["RedirectToLiveSearch"] = value;
}
}
///
/// Click event handler for search button
/// ///
Search button
///
Event arguments
protected void SearchButtonClick(object source, EventArgs e)
{
HandleSearch();
}
602 CHAPTER 12 ?– B U ILDING A COMPLEX CONTROL
private void HandleSearch()
{
// check to see if search was handled on this postback
// (this prevents TextChanged and ButtonClicked from
// requesting the same query twice on the Live Search web service)
if (searchHandled == true)
return;
// check for redirect of query processing to Live Search web site
if (RedirectToLiveSearch == true)
{
this.Page.Response.Redirect(
LiveSearchWebSearchUrl + "?q=" +
HttpContext.
Pages:
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792