2015-11-25 5 views
1

Я новый DNN. У меня проблема с навигацией в DNN. У меня есть модуль с дисплейной страницы и двумя видами:Dotnetnuke. Множественный просмотр с одной страницей отображения

  1. Список всех элементов
  2. Список утверждающих предметов

создать модуль с двумя определениями Модуль для управления этими видами. Первое определение включает два элемента управления:

  1. Посмотреть контроль
  2. управления Дисплей

Второе определение включает один элемент управления: 1. Вид управления

Моя проблема заключается в навигации Url от view1 для отображения страницы работает нормально, но навигация из view2 приводит меня к пустой странице. Это навигация в двух видах:

view1: http://dnndev.me/en-us/vnp/services/service/ctl/Display/mid/426/id/82

view2: http://dnndev.me/en-us/vnp/services/service/ctl/Display/mid/427/id/82

кто-нибудь помочь мне. Большое спасибо.

ответ

1

Я бы рекомендовал вам создать только одно определение модуля для элемента управления «Вид» в этом элементе управления «Вид», установить держатель места, а при загрузке страницы этот элемент управления представлением определит, какой файл ASCX загружать в место держатель.

Вы можете увидеть примеры этого в у DNN простого модуля статьи http://dnnsimplearticle.codeplex.com/

В основном ASCX бокового

<asp:PlaceHolder ID="phViewControl" runat="server" /> 

кода За

try 
{ 
    var controlToLoad = "Controls/ArticleList.ascx"; 
    if (ArticleId > 0) 
    { 
     controlToLoad = "Controls/ArticleView.ascx"; 
    } 

    var mbl = (dnnsimplearticleModuleBase)LoadControl(controlToLoad); 
    mbl.ModuleConfiguration = ModuleConfiguration; 
    mbl.ID = System.IO.Path.GetFileNameWithoutExtension(controlToLoad); 
    phViewControl.Controls.Add(mbl); 
} 
catch (Exception exc) //Module failed to load 
{ 
    Exceptions.ProcessModuleLoadException(this, exc); 
} 

Ключа есть свойство "ArticleID" в базовый класс, который читает из параметра строки запроса, если этот параметр существует, загружается Детальный вид.

Вот как я подхожу к загрузке списка «Список» и «Подробнее». Вы также можете сделать это более сложным.

+0

Спасибо Крис Хэммонд. Но как я могу создать две страницы для списка элементов и отдельной страницы для подробного отображения элемента ?. Это мое требование к проекту. Я не могу загружать управление представлением динамически, потому что я не знаю URL страницы для отображения соответствующего представления. URL страницы создается конечным пользователем позже. –

+0

Позвольте пользователю выбрать страницу отображения в настройках модуля –

+0

Спасибо Крису Хаммонду. Я попробую ваше предложение. Не может быть другого способа решить мою проблему. –

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