Заменить UpdatePanel на telerik

У меня есть некоторые выпадающие элементы управления на моей странице aspx. Значения этого раскрывающегося списка поступают из базы данных. С каждым выпадающим списком мы использовали asp:UpdatePanel. Я хочу заменить код на Telerik. Я не уверен, какой элемент управления следует использовать вместо UpdatePanel. 1. Должен ли я использовать RadAjaxManager или RadAjaxPanel или что-то еще? 2. А как насчет ContentTemplate, как заменить на teleirk?

<td class="tbl_input">
    <asp:UpdatePanel ID="UpdatePanel" runat="server">
        <ContentTemplate>                                                  
            <asp:ListBox ID="paymentSystem" runat="server" Rows="1"></asp:ListBox>
            <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="paymentSystem"
                Display="Dynamic" ErrorMessage="* Please select the Payment system" SetFocusOnError="True" />
        </ContentTemplate>
        <Triggers>
            <asp:AsyncPostBackTrigger ControlID="paymentSystem" EventName="SelectedIndexChanged" />
        </Triggers>
    </asp:UpdatePanel>
</td>

<td>
    <asp:UpdatePanel ID="UpdatePane2" runat="server">
        <ContentTemplate>
            <asp:ListBox ID="currency" runat="server" Rows="1">
                <asp:ListItem Value="">--- SELECT ---</asp:ListItem>
            </asp:ListBox>                            
            <asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ControlToValidate="currency"
                Display="Dynamic" ErrorMessage="* Please select the currency code for cash payment" SetFocusOnError="True" />
        </ContentTemplate>
        <Triggers>
            <asp:AsyncPostBackTrigger ControlID="currency" EventName="SelectedIndexChanged" />
        </Triggers>
    </asp:UpdatePanel>
</td>

Как перенести это управление с помощью telerik?

1 ответ

Есть разные способы сделать это, и, возможно, RadAjaxManager предоставит вам наибольшую гибкость. Ниже вы можете найти пример. Что касается тега ContentTemplate - в этом нет необходимости для элемента управления RadAjaxManager / RadAjaxPanel.

<telerik:RadAjaxManager ID="RadAjaxManager1" runat="server">
    <AjaxSettings>
        <telerik:AjaxSetting AjaxControlID="paymentSystem">
            <UpdatedControls>
                <telerik:AjaxUpdatedControl ControlID="paymentSystem" />
            </UpdatedControls>
        </telerik:AjaxSetting>
        <telerik:AjaxSetting AjaxControlID="currency">
            <UpdatedControls>
                <telerik:AjaxUpdatedControl ControlID="currency" />
            </UpdatedControls>
        </telerik:AjaxSetting>
    </AjaxSettings>
</telerik:RadAjaxManager>
<td class="tbl_input">
    <asp:ListBox ID="paymentSystem" runat="server" Rows="1"></asp:ListBox>
    <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="paymentSystem"
                                Display="Dynamic" ErrorMessage="* Please select the Payment system" SetFocusOnError="True" />
</td>

<td>
    <asp:ListBox ID="currency" runat="server" Rows="1">
        <asp:ListItem Value="">--- SELECT ---</asp:ListItem>
    </asp:ListBox>
    <asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ControlToValidate="currency"
                                Display="Dynamic" ErrorMessage="* Please select the currency code for cash payment" SetFocusOnError="True" />
</td>

Если это страница пользовательского элемента управления / содержимого, вы можете вместо этого использовать RadAjaxManagerProxy, потому что RadAjaxManager является одноэлементным.

Другие вопросы по тегам