我正在开发一个包含多个RadGrids和RadHtmlCharts的项目,该页面使用两个RadSplitters进行布局。顶部分割器包含两个RadGrids,底部分割器包含三个RadHtmlCharts。
下面的代码(与清除阅读时删除的问题无关的代码):
<telerik:RadAjaxManagerProxy ID="AjaxManager1" runat="server">
<AjaxSettings>
<telerik:AjaxSetting AjaxControlID="Tasks">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="InterviewProgressPieChartErrorMessage" />
<telerik:AjaxUpdatedControl ControlID="InterviewProgressPanePieChart" />
</UpdatedControls>
</telerik:AjaxSetting>
</AjaxSettings>
</telerik:RadAjaxManagerProxy>
<telerik:RadSplitter ID="GridStorageSplitter" runat="server" Orientation="Vertical" Width="920" LiveResize="false" CssClass="radSplitter" BorderStyle="None" BorderSize="0">
<telerik:RadPane ID="NotificationsPane" runat="server" CssClass="gridpaneleft" MinWidth="250">
<telerik:RadGrid ID="Notifications" runat="server" AllowSorting="True" CellSpacing="0" DataSourceID="EventLog" AutoGenerateColumns="False" GridLines="None" CssClass="gridgrid">
</telerik:RadGrid>
</telerik:RadPane>
<telerik:RadSplitBar ID="GridSplitter" runat="server">
<AdjacentPanesNames LeftPaneName="NotificationsPane" RightPaneName="TasksPane" />
</telerik:RadSplitBar>
<telerik:RadPane ID="TasksPane" runat="server" CssClass="gridpaneright" MinWidth="400">
<telerik:RadGrid ID="Tasks" DataSourceID="JobsInfo" runat="server" AutoGenerateColumns="False" CellSpacing="0" GridLines="None" CssClass="gridgrid">
<ClientSettings EnablePostBackOnRowClick="true">
<Selecting AllowRowSelect="true" EnableDragToSelectRows ="false"/>
<Scrolling AllowScroll="True" UseStaticHeaders="True" />
</ClientSettings>
<MasterTableView DataSourceID="JobsInfo" AllowMultiColumnSorting="True" HierarchyLoadMode="Client" ShowHeader="false">
</MasterTableView>
</telerik:RadGrid>
</telerik:RadPane>
</telerik:RadSplitter>
<telerik:RadSplitter ID="GraphStorageSplitter" runat="server" Orientation="Vertical" Width="920" Height="400" LiveResize="false" CssClass="radSplitter" BorderStyle="None" BorderSize="0">
<telerik:RadPane ID="JobNumbersPane" runat="server" Width="70" MinWidth="60">
<asp:Table ID="JobNumbersTable" runat="server" CssClass="topmargin7"></asp:Table>
</telerik:RadPane>
<telerik:RadSplitBar ID="GraphSplitter1" runat="server">
<AdjacentPanesNames LeftPaneName="JobNumbersPane" RightPaneName="InterviewStartTimesGraphPane" />
</telerik:RadSplitBar>
<telerik:RadPane ID="InterviewStartTimesGraphPane" runat="server" Width="30%" MinWidth="280">
<telerik:RadHtmlChart ID="interviewStartTimes" runat="server" Legend-Appearance-Visible="false"></telerik:RadHtmlChart>
</telerik:RadPane>
<telerik:RadSplitBar ID="GraphSplitter2" runat="server">
<AdjacentPanesNames LeftPaneName="InterviewStartTimesGraphPane" RightPaneName="ReferralsChartPane" />
</telerik:RadSplitBar>
<telerik:RadPane ID="ReferralsChartPane" runat="server" Width="30%" MinWidth="200">
<telerik:RadHtmlChart ID="referralsChart" runat="server" OnLoad="referralsChart_Load"></telerik:RadHtmlChart>
</telerik:RadPane>
<telerik:RadSplitBar ID="GraphSplitter3" runat="server">
<AdjacentPanesNames LeftPaneName="ReferralsChartPane" RightPaneName="InterviewProgressPane" />
</telerik:RadSplitBar>
<telerik:RadPane ID="InterviewProgressPane" runat="server" Width="30%" MinWidth="200">
<asp:Label ID="InterviewProgressPieChartErrorMessage" runat="server" Text="No Interviews have been sent out for the selected job." Visible="false"></asp:Label>
<telerik:RadHtmlChart runat="server" ID="InterviewProgressPieChart" Visible="true" OnLoad="loadInterviewProgressPieChart">
</telerik:RadHtmlChart>
</telerik:RadPane>
</telerik:RadSplitter>
我正在尝试向页面添加功能,以便在用户单击Tasks RadGrid中的行时,使用相关数据加载InterviewProgressPieChart。它可以工作,但是帖子重新加载整个页面(包括母版页),我想避免这种情况 我也尝试过使用RadAjaxManager,但它仍然会在帖子后面重新加载整个页面(按照设计,似乎)。
在RadAjaxPanel中包装RadSplitters只允许我在回发时加载该面板的内容,但是你不能将RadAjaxPanel放在RadSplitter中,我不知道如何只放置相关的Grid / Chart在AjaxPanel中。
答案 0 :(得分:0)
您需要一个设置,其启动器(AjaxControlID)是网格(通知),在更新的控件中,您需要InterviewProgressPieChart图表:
<telerik:AjaxSetting AjaxControlID="Notifications">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="InterviewProgressPieChart" />
</UpdatedControls>
</telerik:AjaxSetting>
也就是说,假设您的网格在行点击时自动发布页面。