https://technet.microsoft.com/en-us/library/ms143221(v=sql.105).aspx |
Элементы управления и использование JavaScript
Элемент управления FileUpload
Формы HTML позволяют загружать пользовательские файлы на сервер. Для этого нужно установить атрибут enctype как "multipart/form-data" и в нем должен находиться элемент <input type="file">. Элемент управления FileUpload облегчает эту работу. Нужно вставить его в форму, а enctype установится автоматически. Элемент состоит из строки ввода и кнопки с надписью Browse. Процесс загрузки начинается после подачи формы на сервер, обычно для этого вставляют еще одну кнопку:
<form id="form1" runat="server"> <div> <asp:FileUpload ID="FileUpload1" runat="server" /><br> <asp:Button ID="UploadButton" runat="server" Text="Button" OnClick="UploadButton_Click" /><br><br> <asp:Label ID="Message" runat="server" Text="Label" BackColor="#FFC0C0" Width="354px"></asp:Label> </div> </form>
После того как файл загружен, FileUpload позволяет узнать его свойства. Файл находится в кэше сервера, пока не будет сохранен на диск методом SaveAs:
protected void UploadButton_Click(object sender, EventArgs e) { if (this.FileUpload1.HasFile) { try { FileUpload1.SaveAs("c:\\Uploads\\" + FileUpload1.FileName); Message.Text = "Имя файла: " + FileUpload1.PostedFile.FileName + "<br>" + FileUpload1.PostedFile.ContentLength + " кб<br>" + "Content type: " + FileUpload1.PostedFile.ContentType; } catch (Exception ex) { Message.Text = "Ошибка: " + ex.Message.ToString(); } } }
Процесс сохранения может вызвать исключения, поэтому он заключен в блок try-catch.
Свойство PostedFile имеет тип HttpPostedFile. Можно перенаправить содержимое загруженного файла в файловый поток с помощью свойства InputStream.
MultiView
Элемент управления MultiView позволяет создавать несколько представлений одной страницы и переключаться с одного на другой. MultiView состоит из элементов View, в которых находится часть страницы. В каждый момент времени видимым является один из элементов View. Это определяется свойством ActiveViewIndex.
Например, можно создать многоязычную страницу. Пользователь сам выбирает нужный ему язык:
<asp:RadioButtonList ID="RadioButtonList1" runat="server" OnSelectedIndexChanged="RadioButtonList1_SelectedIndexChanged" AutoPostBack="True"> <asp:ListItem Value="English"></asp:ListItem> <asp:ListItem Value="German"></asp:ListItem> <asp:ListItem Value="Russian"></asp:ListItem> </asp:RadioButtonList> <asp:MultiView ID="MultiView1" runat="server"> <asp:View ID="View1" runat="server" > <b>We are glad to meet you on our yellow pages.</b> <br /> <i>Information about over 8800 products and services.</i> </asp:View> <asp:View ID="View2" runat="server"> <b>Wir sind erfreut Sie auf unseren Gelb-Seiten zu emp- fangen!</b> <br /> <i>Wir stellen zur Eur VerfЯgung Informationen von Яeber 8800 Waren und Leistungen.</i> </asp:View> <asp:View ID="View3" runat="server"> <b>Мы рады приветствовать вас на нашем сайте.</b> <br /> <i>Предоставляем информацию о свыше чем 8800 товарах и услугах!</i> </asp:View> </asp:MultiView>
Переключение между представлениями происходит в обработчике списка переключателей RadioButtonList1:
protected void RadioButtonList1_SelectedIndexChanged(object sender, EventArgs e) { MultiView1.ActiveViewIndex = RadioButtonList1.SelectedIndex; }