public void SetConfigurationPropertyValue(object value)
 {
     try
     {
         var widgetConfig = new SearchWidgetConfiguration(value.ToString());
         WidgetTitle.Text = HttpUtility.HtmlDecode(widgetConfig.Name);
         if (ProvidersList.Items.Count > 0)
         {
             ProvidersList.SelectedItem.Selected = false;
         }
         var item = ProvidersList.Items.FindByValue(widgetConfig.ProviderId);
         if (item != null)
         {
             item.Selected = true;
         }
         ResultsPerPage.Text         = widgetConfig.ResultsPerPage.ToString(CultureInfo.InvariantCulture);
         ShowMoreResultsLink.Checked = widgetConfig.ShowMoreResultsLink;
         TextonlyResults.Checked     = widgetConfig.TextOnlyResults;
     }
     catch (FormatException)
     {
         // widget configuration is invalid
         ShowError("The widget configuration is invalid!");
     }
 }
        public object GetConfigurationPropertyValue()
        {
            var widgetConfig = new SearchWidgetConfiguration
            {
                Name            = HttpUtility.HtmlAttributeEncode(WidgetTitle.Text),
                ResultsPerPage  = int.Parse(ResultsPerPage.Text),
                TextOnlyResults = TextonlyResults.Checked
            };

            if (ProvidersList.Items.Count > 0)
            {
                bool showMore = openSearchProviders.Get(ProvidersList.SelectedValue).CanShowMoreResults&& ShowMoreResultsLink.Checked;
                widgetConfig.ProviderId          = ProvidersList.SelectedValue;
                widgetConfig.ResultsPerPage      = int.Parse(ResultsPerPage.Text);
                widgetConfig.ShowMoreResultsLink = showMore;
            }
            return(widgetConfig.ToXml());
        }