Migrating From RadTabStrip Classic to RadTabStrip for ASP.NET Ajax
To migrate a Web application from RadTabStrip "Classic" to RadTabStrip "for ASP.NET Ajax" you need to follow these steps:
-
Make sure you have installed ASP.NET AJAX. Info can be found at http://ajax.asp.net/docs/InstallingASPNETAJAX.aspx
-
If your web application is not using ASP.NET AJAX you need to configure it to do so. Detailed instructions can be found at http://ajax.asp.net/docs/ConfiguringASPNETAJAX.aspx (Look for the topic called "Adding ASP.NET AJAX Configuration Elements to an Existing Web Site".)
-
Add a ScriptManager control to the page (or user control) in which you want to add any RadControls "for ASP.NET Ajax". <asp:ScriptManager ID="ScriptManager1" runat="server" />If your page is a content page you can add the ScriptManager control in your master page. For further details about the ScriptManager control, see http://ajax.asp.net/docs/overview/ScriptManagerOverview.aspx.
-
Drag and drop a control from the RadControls "for ASP.NET Ajax" package or manually copy the Telerik.Web.UI.dll in the Bin folder.
-
Replace the classic RadTabStrip directive<%@ Register TagPrefix="rad" Namespace="Telerik.WebControls" Assembly="RadTabStrip.NET2" %>with the new one of RadTabStrip for ASP.NET Ajax:<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>
Differences between RadTabStrip "classic" and RadTabStrip for ASP.NET Ajax
RadTabStrip for ASP.NET Ajax has changed: All of the client-side properties and methods' names have changed along with several server API changes. Some properties and methods have been completely removed, while new ones have been added. The control's client-side API is not backward-compatible with RadTabStrip Classic edition. All the changes included in the control are listed below:
Server-side API changes
In the RadTabStrip server-side API, a few properties have been removed or renamed and a few type names have changed:
Type names
A number of type names have changed in order to comply with the naming convention of the other navigation controls. The following table lists the type name changes:
RadTabStrip Classic | RadTabStrip for ASP.NET Ajax |
---|---|
Tab | RadTab |
PageView | RadPageView |
TabCollection | RadTabCollection |
RadTabStripOrientation | TabStripOrientationHorizontalTopToBottom renamed to HorizontalTopHorizontalBottomToTop renamed to HorozintalBottomVerticalLeftToRight renamed to VerticalLeftVerticalRightToLeft renamed to VerticalRight |
ScrollButtonsPosition | TabStripScrollButtonsPosition |
TabStripEventArgs | RadTabStripEventArgs |
TabStripEventHandler | RadTabStripEventHandler |
PageViewItemCreatedDelegate | RadMultiPageEventHandlerIts arguments are also different: public delegate void RadTabStripEventHandler(object sender, RadTabStripEventArgs e) |
RadTabStrip
The following table lists the changes to the RadTabStrip object:
RadTabStrip Classic | RadTabStrip for ASP.NET Ajax |
---|---|
Properties | |
EnableImmediateNavigation | Removed |
InnerMostSelectedTab | Renamed to InnermostSelectedTab |
ReorderTabRows | Renamed to ReorderTabsOnSelect |
OnClientTabEnabled | Removed |
OnClientTabDisabled | Removed |
Methods | |
GetAllTabs | Return type changed to IList |
RadTab Class
The following table lists the changes to the RadTab (formerly Tab) object:
RadTabStrip Classic | RadTabStrip for ASP.NET Ajax |
---|---|
Properties | |
ImageOverUrl | Renamed to HoveredImageUrl |
ID | Reserved for internal use only. Cannot be user-defined. |
RadMultiPage Class
The following table lists the changes to the RadMultiPage object:
RadTabStrip Classic | RadTabStrip for ASP.NET Ajax |
---|---|
Properties | |
AutoScrollBars | ScrollBars (of type PageViewScrollBars) |
Events | |
PageViewItemCreated | PageViewCreated |
Client-side API changes
Due to the migration of the RadTabStrip control to the ASP.NET Ajax framework and to the Telerik.Web.UI suite, the client-side API is completely changed to match the naming convention of the new framework.
RadTabStrip Class
The following table lists the changes to the RadTabStrip client-side object:
RadTabStrip Classic | RadTabStrip for ASP.NET Ajax |
---|---|
Methods | |
Disable() | disable() or set_enabled(false) |
Enable() | enable() or set_enabled(true) |
GetAllTabs() | get_allTabs() |
FindTabByUrl() | findTabByUrl() |
FindTabByText() | findTabByText() |
FindTabById() | removed: tab ID is not rendered to preserve output. |
FindTabByValue() | findTabByValue() |
AttachEvent() | get_events().addHandler can be used instead |
DetachEvent() | get_events().removeHandler can be used instead |
Properties | |
ID | get_id() |
DomElement | get_element() |
Tabs | get_tabs()The returned value is no longer Array. It is Telerik.Web.UI.RadTabCollection |
for (var i=0; i<tabstrip.get_tabs().get_count();i++)
{
var tab = tabstrip.get_tabs().getTab(i);
alert(tab.get_text());
}
AllTabs | get_allTabs() |
---|---|
SelectedTab | get_selectedTab() |
SelectedIndex | get_selectedIndex() |
Enabled | get_enabled() |
RadTab Class
The following table lists the changes to the RadTab client-side object:
RadTabStrip Classic | RadTabStrip for ASP.NET Ajax |
---|---|
Methods | |
Disable() | disable() or set_enabled(false) |
Enable() | enable() or set_enabled(true) |
Select() | select() or set_selected(true) |
UnSelect() | unselect() or set_selected(false) |
SelectParents() | selectParents() |
Click() | click() |
SetCssClass() | set_cssClass() |
SetDisabledCssClass() | set_disabledCssClass() |
SetSelectedCssClass() | set_selectedCssClass() |
SetText() | set_text() |
Properties | |
DomElement | get_element() |
ImageDomElement | get_imageElement() |
ChildStripDomElement | get_childListElement() |
Tabs | get_tabs()The returned value is no longer Array. It is Telerik.Web.UI.RadTabCollection |
SelectedTab | get_selectedTab() |
SelectedIndex | get_selectedIndex() |
Parent | get_parent() |
TabStrip | get_tabStrip() |
Selected | get_selected() |
Enabled | get_enabled() |
Index | get_index() |
GlobalIndex | removed |
Text | get_text() |
Value | get_value() |
DepthLevel | get_level() |
get_attributes() – returns Telerik.Web.UI.AttributeCollection of custom attributes associated with the tab |
RadTabCollection class (new)
The following table lists the methods of the new RadTabCollection client-side object:
Method | Description |
---|---|
Methods | |
add() | Adds a tab |
insert() | Inserts a tab |
remove() | Removes a tab |
clear() | Clears the tabs |
getTab() | Gets a tab from the Tabs collection |
indexOf() | Returns the index of a tab |
removeAt() | Removes a tab at a specified index |
get_count() | Returns the count of the tabs |
trackChanges() | Indicates the beginning of client-side changes that are meant to be persisted at the server. |
commitChanges() | Indicates the end of client-side changes that are meant to be persisted at the server. |