Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / FileUpload и UpdatePanel / 8 сообщений из 8, страница 1 из 1
27.04.2015, 11:12
    #38945997
FileUpload и UpdatePanel
Всем привет!
Сделал страницу редактирования новостей с добавлением картинок.
Новости хранятся в СУБД, картинки к ним - в файловом хранилище.
Начались проблемы после решения использовать AJAX.
FileUpload начал выдавать ошибку "Нет файла".
В интернете нашел много информации по поводу несовместимости FileUpload и UpdatePanel.
Однако есть и несколько решений, одно из них, я попробовал применить:
Код: c#
1.
2.
3.
4.
Добавил триггер к UpdatePanel:
<Triggers>
        <asp:PostBackTrigger ControlID="Button6" />
  </Triggers>


Почему-то после компиляции кода при самой первой попытке добавить картинку - вылетает ошибка "Нет файла", однако при второй и последующей попытке - все прекрасно работает.
Не понимаю, почему не отрабатывает в самый первый раз.
Прошу помочь.
P.S. вариант с AjaxFileUpload мне не подходит. Насколько я понимаю, его нельзя редактировать, а английские надписи remove, upload без возможности их локализовать - немного смущают.
...
Рейтинг: 0 / 0
27.04.2015, 11:13
    #38945998
FileUpload и UpdatePanel
По нажатию Button6 вызывается метод SaveAs
...
Рейтинг: 0 / 0
27.04.2015, 14:21
    #38946219
FileUpload и UpdatePanel
Кажется понял, почему так происходит.
Все дело в том, что для переключения между списком новостей и детальной карточкой я использую multiview.
Пришел к тому, что мне необходимо зарегистрировать кнопку <ImageButton2> (ScriptManager1.RegisterPostBackControl).
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
 <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="app_news_id" DataSourceID="SqlDataSource1" CaptionAlign="Top" OnSelectedIndexChanged="GridView1_SelectedIndexChanged" CellPadding="4" BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px" ForeColor="Black" GridLines="Horizontal" ShowHeader="False" OnRowDataBound="GridView1_RowDataBound" OnRowCommand="GridView1_RowCommand" Width="800px" OnSelectedIndexChanging="GridView1_SelectedIndexChanging">
                <Columns>
                    <asp:TemplateField HeaderText="">
                        <ItemTemplate>
                            <div style="float:right; clear:both; width:auto">
                                <div style="float:left"><asp:ImageButton ID="ImageButton2" runat="server" ImageUrl="~/Images/add.png" CommandName="Add" EnableTheming="False" Height="16px" Width="16px" /></div>
                                <div style="float:left"><asp:ImageButton ID="ImageButton1" runat="server" ImageUrl="~/Images/edit.png" CommandName="Select" EnableTheming="False" Height="16px" Width="16px" /></div>
                                <div style="float:left"><asp:ImageButton ID="ImageButton3" runat="server" ImageUrl="~/Images/remove.png" CommandName="Delete" CommandArgument='<%# Eval("app_news_id") %>' EnableTheming="False" Height="16px" Width="16px" /></div>
                            </div>


Как мне вытащить кнопку из GridView, чтобы я мог её зарегистрировать?
Пробовал:
ScriptManager1.RegisterPostBackControl(((ImageButton)GridView1.FindControl("ImageButton2")));
не помогает. Ошибка ссылки на нулевой объект.
.
...
Рейтинг: 0 / 0
27.04.2015, 17:32
    #38946484
Sergey_net
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
FileUpload и UpdatePanel
DmitriyVladimirovich,

UpdatePanel уже давно устарел, если нужно без перезагрузки страницы добавить файлы, лучше использовать аякс и ashx
Вот пример
...
Рейтинг: 0 / 0
28.04.2015, 11:54
    #38947016
VIT2708_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
FileUpload и UpdatePanel
DmitriyVladimirovich,

Убери UpdatePanel и будет работать
...
Рейтинг: 0 / 0
29.04.2015, 13:57
    #38948605
ЕвгенийВ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
FileUpload и UpdatePanel
DmitriyVladimirovich,
Делай это в Item_Data_Bound грида. Ищи кнопку по имени и регистрируй.
...
Рейтинг: 0 / 0
17.06.2015, 14:44
    #38985863
rumka
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
FileUpload и UpdatePanel
а можно еще попробовать,у той кнопки,которая обрабатывает FileUpload,в свойстве PostBackUrl выставить знак # )
...
Рейтинг: 0 / 0
17.06.2015, 14:46
    #38985867
rumka
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
FileUpload и UpdatePanel
просто #
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / FileUpload и UpdatePanel / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]