0

複数の RadGrids と RadHtmlCharts を含むプロジェクトに取り組んでおり、ページは 2 つの RadSplitters でレイアウトされています。上のスプリッターには 2 つの RadGrids が含まれ、下のスプリッターには 3 つの 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 も使用してみましたが、ポストバック時にページ全体がリロードされます (設計によるようです)。

RadSplitter を RadAjaxPanel にラップすると、ポストバック時にそのパネルのコンテンツのみをロードできますが、RadAjaxPanel を RadSplitter 内に配置することはできず、関連するグリッド/チャートのみを AjaxPanel に配置する方法がわかりません。 .

4

1 に答える 1

0

イニシエーター (AjaxControlID) がグリッド (通知) であり、更新されたコントロールに InterviewProgressPieChart チャートがある設定が必要です。

    <telerik:AjaxSetting AjaxControlID="Notifications">
        <UpdatedControls>
            <telerik:AjaxUpdatedControl ControlID="InterviewProgressPieChart" />
        </UpdatedControls>
    </telerik:AjaxSetting>

つまり、行のクリック時にグリッドがページを自動的に投稿すると仮定します。

于 2013-06-11T14:09:24.397 に答える