我要做的是放置一个在特定标签上动态创建的特定图表。例如,图表A将转到ColorTab,图表B将转到HistoryTab
<telerik:RadAjaxPanel ID="StripPanel" runat="server" Width="100%">
<telerik:RadTabStrip ID="TabStrip" runat="server" MultiPageID="Monetary" SelectedIndex="0">
<Tabs>
<telerik:RadTab Text="MonetaryTab">
</telerik:RadTab>
<telerik:RadTab Text="VTab">
</telerik:RadTab>
<telerik:RadTab Text="ColorTab">
</telerik:RadTab>
<telerik:RadTab Text="HistoryTab">
</telerik:RadTab>
<telerik:RadTab Text="AdTab">
</telerik:RadTab>
</Tabs>
</telerik:RadTabStrip>
</telerik:RadAjaxPanel>
这就是我正在尝试的
Control masterC = FindControl("MonetaryTab");
RadHtmlChart CarLotChart = ChartCreationClass.HTMLChartCreation();
masterC.Controls.Add(CarLotChart);
它永远不会找到放置图表的控件。
答案 0 :(得分:0)
使用this主题中的建议来完成此任务:
RadHtmlChart CarLotChart = ChartCreationClass.HTMLChartCreation();
TabStrip.Tabs["MonetaryTab"].Controls.Add(CarLotChart);
通过following methods中的任何一个参考所需的标签。
答案 1 :(得分:0)
RadTabStrip与RadmultiPage控件配合使用。首先在其中定义RafTabStrip和Tabs。然后有一个RadMultiPage并为您在TabStrip中定义的每个选项卡定义一个页面(类型为RadPageView)。控件需要添加到PageView而不是直接添加到选项卡。
我已根据您在问题中定义的TabStrip创建了一个小型演示。
这是TabStrip代码:
<telerik:RadTabStrip ID="TabStrip" runat="server" MultiPageID="Monetary" SelectedIndex="0" >
<Tabs>
<telerik:RadTab Text="MonetaryTab">
</telerik:RadTab>
<telerik:RadTab Text="VTab">
</telerik:RadTab>
<telerik:RadTab Text="ColorTab">
</telerik:RadTab>
<telerik:RadTab Text="HistoryTab">
</telerik:RadTab>
<telerik:RadTab Text="AdTab">
</telerik:RadTab>
</Tabs>
</telerik:RadTabStrip>
现在这里是RadMultiPage定义:
<telerik:RadMultiPage ID="Monetary" runat="server" SelectedIndex="0" OnLoad="Monetary_Load">
<telerik:RadPageView runat="server" ID="monetaryTabPageView"/>
<telerik:RadPageView runat="server" ID="vTabPageView"/>
<telerik:RadPageView runat="server" ID="colorTabPageView"/>
<telerik:RadPageView runat="server" ID="historyTabPageView"/>
<telerik:RadPageView runat="server" ID="adTabPageView"/>
</telerik:RadMultiPage>
请注意,我正在收听RadMultiPage的OnLoad事件。在这个演示中 - 当RadMultiPage加载时,我将创建图表并将其添加到我们拥有的eacg pageview中。这是事件处理程序代码:
protected void Monetary_Load(object sender, EventArgs e)
{
AddChart(monetaryTabPageView);
AddChart(vTabPageView);
AddChart(colorTabPageView);
AddChart(historyTabPageView);
AddChart(adTabPageView);
}
private void AddChart(RadPageView pageView)
{
RadHtmlChart chart = new RadHtmlChart();
chart.ChartTitle.Text = pageView.ID + " chart";
pageView.Controls.Add(chart);
}
正如您所看到的,我只是将控件直接添加到了pageview的控件集合中。
注意:作为概念证明,我创建了一个空图表,即仅定义了标题的图表。如果需要,你可以继续使用一些有意义的数据绑定。
这是截图:
希望这能回答你的问题。
Lohith(技术传播者,Telerik India)