Откройте несколько дочерних окон и отслеживайте их все - PullRequest
0 голосов
/ 18 августа 2010

Итак, вот ситуация. У меня есть кнопка на одной из моих страниц extjs. Эта кнопка открывает дочернее окно как всплывающее окно. Это дочернее окно имеет атрибут .method, а также атрибут .ref, а также .id. Мне нужна функциональность, чтобы открывать другое окно с тем же шаблоном, каждый раз, когда я нажимаю эту кнопку.

Я думал установить для свойства childwindow .method что-то вроде 'getWindow', а для .ref - что-то вроде 'newWindow', а затем создать на сервере функцию javascript, чтобы она выглядела примерно так:

var myArray = [];
var count = 0;
function getWindow() {
    newWindow.Id = count;
    getWindow().show();
    myArray[count] = count;
    count++;
}

Будет ли это работать?

Edit:

Using ViewDetailsWin As New Pages.ChildWindow
        With ViewDetailsWin
            .Id = "Test"
            .IconCls = Model.WorkflowStepDefinition.SmallIcon
            .Ref = "viewDetailsWin"
            .RenderTo = "workspacePanel.getEl()"
            .DestroyerRef = "mainPanel"
            .MethodName = "getViewDetailsWin"
            .Title = "View Details/Amortization Schedule"
            .Layout = Pages.Panel.LayoutType.Fit
            .Closable = True
            .CloseAction = Pages.Window.CloseActionType.Hide
            .Minimizable = True
            .Modal = False
            .Height = 700
            .Width = 1000
            .BodyStyle = "padding:10px"

Это еще не все ....

Ответы [ 2 ]

1 голос
/ 18 августа 2010

Что вы подразумеваете под тем же шаблоном?Вы хотите точно такое же окно при нажатии на эту кнопку?Затем создайте компонент Ext.Window и создайте новый экземпляр при каждом нажатии кнопки.

Например:

MyWindow = Ext.extend(Ext.Window, {
    width: 300,
    height: 300,
    title : 'my window',
    ref: 'whatever',
    method: function(){},
    initComponent: function () {
        MyWindow.superclass.initComponent.call(this);
    }
});

function createWindow(){
     var win = new MyWindow();
     win.show();
}

При нажатии кнопки вызовите эту функцию createWindow.Теперь, чтобы отслеживать все Windows, взгляните на компонент WindowGroup или WindowMgr в ExtJS.

0 голосов
/ 18 августа 2010

Я пошел другим путем.Я создал другой View под названием Details.aspx в той же папке MVC.Затем с помощью Javascript я просто каждый раз открываю это представление как всплывающее окно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...