static Dictionary<string, ControlDependencyMap> CreateDependencyMaps()
{
var result = new Dictionary<string, ControlDependencyMap>();
var assembly = typeof(ControlDependencyMap).Assembly;
var allActControlsNames = new string[] {
"AjaxControlToolkit.Accordion",
"AjaxControlToolkit.AccordionContentPanel",
"AjaxControlToolkit.AccordionExtender",
"AjaxControlToolkit.AccordionPane",
"AjaxControlToolkit.ScriptControlBase",
"AjaxControlToolkit.AjaxFileUpload",
"AjaxControlToolkit.AlwaysVisibleControlExtender",
"AjaxControlToolkit.AnimationExtender",
"AjaxControlToolkit.AreaChart",
"AjaxControlToolkit.AsyncFileUpload",
"AjaxControlToolkit.BarChart",
"AjaxControlToolkit.BubbleChart",
"AjaxControlToolkit.AutoCompleteExtender",
"AjaxControlToolkit.BalloonPopupExtender",
"AjaxControlToolkit.CalendarExtender",
"AjaxControlToolkit.CascadingDropDown",
"AjaxControlToolkit.CollapsiblePanelExtender",
"AjaxControlToolkit.ColorPickerExtender",
"AjaxControlToolkit.ComboBox",
"AjaxControlToolkit.ComboBoxButton",
"AjaxControlToolkit.ConfirmButtonExtender",
"AjaxControlToolkit.DragPanelExtender",
"AjaxControlToolkit.DropDownExtender",
"AjaxControlToolkit.DropShadowExtender",
"AjaxControlToolkit.DynamicPopulateExtender",
"AjaxControlToolkit.FilteredTextBoxExtender",
"AjaxControlToolkit.Gravatar",
"AjaxControlToolkit.HoverExtender",
"AjaxControlToolkit.HoverMenuExtender",
"AjaxControlToolkit.HtmlEditorExtender",
"AjaxControlToolkit.HtmlEditor.Editor",
"AjaxControlToolkit.HtmlEditor.Popups.AttachedPopup",
"AjaxControlToolkit.HtmlEditor.Popups.AttachedTemplatePopup",
"AjaxControlToolkit.HtmlEditor.Popups.OkCancelAttachedTemplatePopup",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.MethodButton",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.BackColorClear",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.BackColorSelector",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.Bold",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.BulletedList",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.Copy",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.Cut",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.DecreaseIndent",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.DesignMode",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.DesignModeBoxButton",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.FixedBackColor",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.FixedForeColor",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.FontName",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.FontSize",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.ForeColor",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.ForeColorClear",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.ForeColorSelector",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.HorizontalSeparator",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.HtmlMode",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.IncreaseIndent",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.InsertHR",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.InsertLink",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.Italic",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.JustifyCenter",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.JustifyFull",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.JustifyLeft",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.JustifyRight",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.Ltr",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.OrderedList",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.Paragraph",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.Paste",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.PasteText",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.PasteWord",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.PreviewMode",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.Redo",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.RemoveAlignment",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.RemoveLink",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.RemoveStyles",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.Rtl",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.StrikeThrough",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.SubScript",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.SuperScript",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.Underline",
"AjaxControlToolkit.HtmlEditor.ToolbarButtons.Undo",
"AjaxControlToolkit.LineChart",
"AjaxControlToolkit.ListSearchExtender",
"AjaxControlToolkit.MaskedEditExtender",
"AjaxControlToolkit.MaskedEditValidator",
"AjaxControlToolkit.ModalPopupExtender",
"AjaxControlToolkit.MultiHandleSliderExtender",
"AjaxControlToolkit.MutuallyExclusiveCheckBoxExtender",
"AjaxControlToolkit.NoBot",
"AjaxControlToolkit.NoBotExtender",
"AjaxControlToolkit.NumericUpDownExtender",
"AjaxControlToolkit.PagingBulletedListExtender",
"AjaxControlToolkit.PasswordStrength",
"AjaxControlToolkit.PieChart",
"AjaxControlToolkit.PopupControlExtender",
"AjaxControlToolkit.PopupExtender",
"AjaxControlToolkit.Rating",
"AjaxControlToolkit.RatingExtender",
"AjaxControlToolkit.BulletedList",
"AjaxControlToolkit.BulletedListItem",
"AjaxControlToolkit.DraggableListItemExtender",
"AjaxControlToolkit.DropWatcherExtender",
"AjaxControlToolkit.ReorderList",
"AjaxControlToolkit.ReorderListItem",
"AjaxControlToolkit.ResizableControlExtender",
"AjaxControlToolkit.Seadragon",
"AjaxControlToolkit.SeadragonControl",
"AjaxControlToolkit.SeadragonFixedOverlay",
"AjaxControlToolkit.SeadragonScalableOverlay",
"AjaxControlToolkit.SliderExtender",
"AjaxControlToolkit.TabContainer",
"AjaxControlToolkit.TabPanel",
"AjaxControlToolkit.ToggleButtonExtender",
"AjaxControlToolkit.RoundedCornersExtender",
"AjaxControlToolkit.SlideShowExtender",
"AjaxControlToolkit.TextBoxWatermarkExtender",
"AjaxControlToolkit.Twitter",
"AjaxControlToolkit.UpdatePanelAnimationExtender",
"AjaxControlToolkit.ValidatorCalloutExtender"};
// Retrieve all dependencies in controls to build ControlTypeMaps
foreach (var typeName in allActControlsNames) {
var type = assembly.GetType(typeName);
result[typeName] = BuildDependencyMap(type);
}
foreach (var type in ToolkitConfig.CustomControls) {
result[type.FullName] = BuildDependencyMap(type);
}
return result;
}