2014-09-24 4 views
0

Я использую RadTreeList для отображения элементов, RadContextMenu (Insert, Update, Delete), когда вы нажимаете правой кнопкой мыши на элемент Tree и RadWindowManager, чтобы открыть всплывающее окно RadContextMenu ItemClick. Когда они нажимают кнопку «Вставить» или «Обновить», диалоговое окно открывается плавно, они сохраняются, диалог закрывается, твилист полностью восстанавливается. Когда они нажимают «Удалить», мне не нужно открывать окно, просто запустите код для удаления, а затем RadTreeList.Rebind();RadAjaxManager не позволяет мне перетаскивать мой RadTreeList

Rebind не будет работать из-за этого элемента в моем RadAjaxManager. Причина, по которой он здесь, заключается в том, что диалоги открываются плавно при нажатии контекстного меню.

Аякса Установка Мессинг вещи, но и делает мои всплывающие окна открытыми гладко:

<telerik:AjaxSetting AjaxControlID="rcMenu"> 
    <UpdatedControls> 
     <telerik:AjaxUpdatedControl ControlID="RadWindowManager1" LoadingPanelID="RadAjaxLoadingPanel1"></telerik:AjaxUpdatedControl> 
    </UpdatedControls> 
</telerik:AjaxSetting> 

Вот как у меня есть мои настройки Контекстное меню:

<telerik:RadContextMenu ID="rcMenu" runat="server" OnItemClick="rcMenu_ItemClick" EnableRoundedCorners="true" EnableShadows="true"> 
       <Items> 
        <telerik:RadMenuItem Text="Insert" Value="Insert"></telerik:RadMenuItem> 
        <telerik:RadMenuItem Text="Modify" Value="Edit"></telerik:RadMenuItem> 
        <telerik:RadMenuItem Text="Delete" Value="Delete"></telerik:RadMenuItem> 
       </Items> 
</telerik:RadContextMenu> 

    <telerik:RadWindowManager ID="RadWindowManager1" runat="server" EnableShadow="true" VisibleOnPageLoad="true" EnableViewState="false"> 
    </telerik:RadWindowManager> 

Кто-нибудь знает любых обходных решений, поэтому я могу получить гладкие диалоговые окна для вставки и обновления, а для удаления страницы все равно будет перепроверять список тем, когда я вызываю RadTreeList.Rebind() ;?

+0

Вы можете перезвонить в javascript. Но я все еще не уверен, почему удаление не будет работать с тем, что у вас здесь. – paqogomez

+0

Удаление происходит. Повторная попытка не работает, если я не удалю этот AjaxSetting выше. Скорее всего, потому, что порядок операций: Щелкните правой кнопкой мыши TreeListRow, нажмите «Удалить» в ContextMenu, перейдите в ContextMenu_ItemClick, поскольку он является удаленным, мы не открываем окно, поэтому AjaxSetting должно быть неактуальным, запускать код удаления, пытаться перекрыть treelist и я ничего не получаю, никаких ошибок в консоли. – JTunney

+0

Так он делает полный ответ на удаление? – paqogomez

ответ

1

Пожалуйста, попробуйте приведенный ниже фрагмент кода.

<telerik:RadAjaxManager ID="RadAjaxManager1" runat="server"> 
    <AjaxSettings> 
     <telerik:AjaxSetting AjaxControlID="rcMenu"> 
      <UpdatedControls> 
       <telerik:AjaxUpdatedControl ControlID="RadWindowManager1" LoadingPanelID="RadAjaxLoadingPanel1" /> 
       <telerik:AjaxUpdatedControl ControlID="RadTreeList" LoadingPanelID="RadAjaxLoadingPanel1" /> 
       <telerik:AjaxUpdatedControl ControlID="rcMenu" LoadingPanelID="RadAjaxLoadingPanel1" /> <%--Please remove this if not necessory--%> 
      </UpdatedControls> 
     </telerik:AjaxSetting> 
    </AjaxSettings> 
</telerik:RadAjaxManager> 

Дайте мне знать, если есть вопросы.

+0

Спасибо вам большое! Хотя у меня есть один быстрый вопрос о RadAjaxManager. Почему иногда люди устанавливают параметр Ajax, такой как RadGrid1, а затем также AjaxUpdatedControl RadGrid1 внутри него? То же, что и в приведенном выше примере (я знаю, что вы говорите, чтобы удалить его, если не нужно), но почему мы хотим его там в первую очередь? Я предполагаю, что это простой способ дать один элемент управления ajax. – JTunney

+0

Эта строка кода, показывающая, что при возникновении какого-либо события в этом случае вам необходимо обновить некоторые элементы управления в пользовательском интерфейсе. Элементы управления, которые были определены в теге . Мы не выполняем операцию CRUD в меню, поэтому вам не нужно писать идентификатор элемента управления внутри . согласно вашему требованию мы основаны на щелчке меню, мы обновляем radwindow и treelist так. –

Смежные вопросы