Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Разработка под ASP.NET > Вставка картинки в GridView


Автор: Bonus 3.8.2007, 09:48
Есть GridView с ImageField'ом. Из БД приходит значение, и по этому значению нужно взять картинку из папки Pictures и вставить в ImageField.

Пробовал делать через дополнительную страницу, которая в Response.Write пишет ссылку на картинку, но это не работает (код страницы вообще не выполняется).

Помогите, плз.

Автор: Mymik 3.8.2007, 10:15
в Response.Write не надо писать ссылку на картинку. Там надо писать в бинарном виде данные картинки. Т.е. ты получаешь в твоей отдельной странице код картинки, потом берешь System.IO и загружаешь данные в память и отдаешь эти данные в бинарном виде Response.Write. Ну и поменять надо ContentType у Response

Автор: Bonus 3.8.2007, 10:28
А что делать если нужно указать просто ссылку на картинку?

Автор: Mymik 3.8.2007, 10:31
тогда пишешь 
Код

<%# "images/CoolImages/VeryCoolImage/" + Eval("ImageName").ToString() %>

Автор: Bonus 3.8.2007, 10:35
Выскакивает ошибка:

Databinding expressions are only supported on objects that have a DataBinding event. System.Web.UI.WebControls.ImageField does not have a DataBinding event.

Автор: Mymik 3.8.2007, 10:48
а, блин, ты ImageField используешь... не заметил.
Тебе надо подходить к этому с другой стороны.
Код

          <asp:ImageField dataimageurlfield="ImageName"
            dataimageurlformatstring="~/images/CoolImages/VeryCoolImage/{0}.jpg"
            alternatetext="Йа Фотко"
            nulldisplaytext="Меня нет тут"
            headertext="Фотко"  
            readonly="true"/>

dataimageurlfield -- Под каким именем храниться фотка
dataimageurlformatstring -- форматированный вывод данных.

Автор: Bonus 3.8.2007, 10:56
Спасибо! заработало

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)