RadTabStrip sembra non avere RadTab selezionato – Perché?
Fa un RadTabStrip lavoro in una MasterPage? Le schede non vengono visualizzati selezionato quando viene cliccato.
Seguente procedura:
-
Creare un nuovo Progetto Applicazione Web. Per impostazione predefinita contiene l’Home e Sulle schede all’interno di una Pagina Master del Sito.Master). Le schede sono in asp:MenuItem controlli.
-
Commento asp:Menu di controllo e trascinare un RadTabStrip al suo posto. Aggiungere due RadTabs. Quando si esegue l’applicazione ogni scheda funziona come previsto, sembra essere selezionato quando si fa clic.
-
Ora aggiungere NavigateUrls per ogni RadTab riferimento al “~Default.aspx” e “~Circa.aspx” pagine. Quando l’applicazione viene eseguita schede non sembrano essere selezionato quando viene cliccato (anche se la pagina corretta visualizza).
Cosa sta succedendo? Come posso fare questo lavoro?
Aggiornamento: Ecco come ho modificato il codice predefinito nel Sito.Master…
<div>
<telerik:RadScriptManager ID="RadScriptManager1" runat="server">
</telerik:RadScriptManager>
</div>
<%--<div class="clear hideSkiplink">
<asp:Menu ID="NavigationMenu" runat="server" CssClass="menu" EnableViewState="false" IncludeStyleBlock="false" Orientation="Horizontal">
<Items>
<asp:MenuItem NavigateUrl="~/Default.aspx" Text="Home"/>
<asp:MenuItem NavigateUrl="~/About.aspx" Text="About"/>
</Items>
</asp:Menu>
</div>--%>
<div>
<telerik:RadTabStrip ID="RadTabStrip1" runat="server">
<Tabs>
<telerik:RadTab runat="server" Text="Root RadTab1" NavigateUrl="~/Default.aspx">
</telerik:RadTab>
<telerik:RadTab runat="server" Text="Root RadTab2" NavigateUrl="~/About.aspx" >
</telerik:RadTab>
</Tabs>
</telerik:RadTabStrip>
</div>
La risposta…
Bojan Skrchevski s risposta mi ha portato a questo. Ho aggiunto questo codice alla Pagina principale dell’evento Page_Load e funziona:
using Telerik.Web.UI;
namespace WebApplication1
{
public partial class SiteMaster : System.Web.UI.MasterPage
{
protected void Page_Load(object sender, EventArgs e)
{
RadTab currentTab = RadTabStrip1.FindTabByUrl(Request.Url.PathAndQuery);
if (currentTab != null) currentTab.Selected = true;
}
}
}
- puoi postare del codice, in particolare il controllo TabStrip
- Il RadTab causa di un postback…vedi la mia risposta qui sotto
Penso che devi aggiungere anche
runat="server"
per il RadTab elemento se si desidera utilizzarlo come che. Per esempio:È inoltre possibile utilizzare
ContentUrl
nel corrispondentetelerik:RadPageView
per navigare sul lato client. Esempio:AGGIORNAMENTO(in aggiornamento):
Quando si aggiunge
runat="server"
per il RadTab quindi provoca un postback. Postback il controllo è in grado di determinare quale scheda è selezionata, anche se torni alla pagina specificata. Ecco come si è risolto in Telerik esempio:L’unica differenza che posso vedere nel codice rispetto alla mia pagina master SelectedIndex=”0″ sul RadTabStrip e Selected=”true” su una delle Schede Rad: