We are building a very dynamic Ajax web application using Telerik Tabstrib.
<telerik:RadTabStrip ID="RadTabStrip1" runat="server" SelectedIndex="0" ontabclick="RadTabStrip1_TabClick" ScrollChildren="True" ScrollButtonsPosition="Middle" onclienttabselecting="onTabSelecting" OnClientLoad="SetScrollPosition"></telerik:RadTabStrip>
Our tabs are build dynamically by code on the server using a Template.
public void InstantiateIn(System.Web.UI.Control container)
{
Label label1 = new Label();
label1.ID = "ItemLabel";
label1.Text = "Text";
label1.Font.Size = 10;
label1.Font.Bold = true;
label1.DataBinding += new EventHandler(label1_DataBinding);
Image image1 = new Image();
image1.ID = "ItemImage";
image1.AlternateText = "Delete";
image1.ImageUrl = @"~\images\tabs\delete.gif";
image1.DataBinding += new EventHandler(image1_DataBinding);
container.Controls.Add(label1);
container.Controls.Add(image1);
}
void image1_DataBinding(object sender, EventArgs e)
{
Image target = (Image)sender;
RadTab tab = (RadTab)target.BindingContainer;
string tabText = tab.Text;
if (tabText == "+")
target.CssClass = "btnHidden";
else
{
target.CssClass = "btnVisible";
target.Attributes.Add("onclick", "deleteTab(" + tab.Value + ");");
}
}
private void label1_DataBinding(object sender, EventArgs e)
{
Label target = (Label)sender;
RadTab tab = (RadTab)target.BindingContainer;
string tabText = (string)DataBinder.Eval(tab, "Text");
target.Text = tabText;
}
The first problem we encountered using a template is that we lost the default skin. For the temporary we now use RadTabStrip1.Skin = "Outlook"; How can we get the default skin back?
When the aspx page is rendered the result looks OK
We added some javascript code to delete tabs and with IE7 is works reasonably OK. But with FireFox nothing works. No response when clicking on tabs of the delete image. Is this a common thing?
Third thing: As you see the image, the delete cross id beyond its scroll boundaries. Do you have something to fix this?