ASP. NET обновление iFrame - PullRequest
       3

ASP. NET обновление iFrame

0 голосов
/ 12 марта 2020

Итак, у меня есть ASP. NET PDF-приложение, которое выполняет слияние, разделение и удаление страниц PDF. Я использую iframe для рендеринга этих страниц PDF.

Я хочу, чтобы каждый раз, когда пользователь объединял документ, новый измененный документ автоматически отображался в iframe.

Ну, проблема в том, что этого не происходит . Всякий раз, когда пользователь создает новый документ PDF от слияния, он не отображается в iframe, а вместо этого пустая белая страница заполняет iframe.

HTML часть iframe

<iframe src="DevContent\CAL_landing_page.pdf#zoom=50" id="outputPDF" runat="server" width="75%" height="600px"></iframe>

.

Ниже показано, как выглядит мое веб-приложение в формате PDF. Если бы я нажал кнопку «Объединить», я бы хотел, чтобы новый объединенный документ, состоящий из A.pdf и B.pdf (mergedDocument1.pdf), автоматически отображался в iframe, но, как вы можете видеть, iframe пуст.

Если я нажму кнопку «Просмотр» рядом с mergedDocument1.pdf, то документ слияния будет правильно отображаться в iframe, но я не хочу, чтобы пользователь вручную нажимал кнопку просмотра все время после просто слияния. enter image description here

Код, управляющий кодом iframe

КОД ДЛЯ КНОПКИ ПРОСМОТРА

string fileLocation = "Data\\" + row.Cells[0].Text; // holds the PDF document location  
switch (e.CommandName)
            {
            //===========================================================================================
                case "View": // user clicked the 'view' button, the file in the row will now be shown to user in the iframe
                    outputPDF.Attributes["src"] = fileLocation; //
                    TextBox1.Text = fileLocation;
                    TextBox6.Text = (string)Session["pdfFileViewNameOnly"];
                    return;

КОД В ФУНКЦИИ MERGE, КОТОРАЯ НЕ ДЕЛАЕТ T REFRE SH IFRAME

            // newMergedFile holds the location of the new merged pdf documents
            string newMergedFile;

            try
            {   // pdf document merges here and returns the string location of where the merge document is
                newMergedFile = mergeObj.mergeFiles((pdfFile)Session["mergePDF"], userFolder);
            }
            catch (Exception ex)
            {
                return;
            };


            addAndRefreshGrid(newMergedFile); // adds merged document to the Grid view
                                              // allows user to click "View" or "Download" for the new document

             outputPDF.Attributes["src"] = newMergedFile; // show user the new merge document in the iframe, but doesnt work

Когда пользователь сначала загружает файл, нажимая «Выбрать файл», а затем нажимая «Загрузить файл», документ PDF заполняет Gridview и автоматически отображается в iframe. правильно. Приведенный ниже код является его фрагментом.

 fileInView = @"Data\" + Session["UserName"].ToString() + "-" + FileUpload1.FileName;

 outputPDF.Attributes["src"] = fileInView;

Я знаю, что передаю правильное местоположение файла, потому что просто нажав кнопку «Просмотр», он будет правильно отображаться в iframe. И, как вы можете видеть из моей функции слияния, я использую ту же строковую переменную, чтобы сохранить ее в сетке и попытаться обновить с ее помощью sh iframe.

Спасибо за ваше время.

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