Member 13019612 Ответов: 1

Показать изображение из gridview в imagebox


всем привет
у меня есть grid-view и file up-loader, как показано ниже

Экран

и загрузчик файлов работает хорошо пользователь может отправить файл в папку моего сайта и увидеть имя файла в виде сетки, но проблема в том, что я хочу, когда пользователь нажимает на ссылку выбора или одну из этих кнопок (одну для удаления и одну для показа)
изображение отображается в imagebox ниже загрузчика файлов
и это мой код для получения данных gridview

private void getimages()
    {
        string[] filePaths = Directory.GetFiles(Server.MapPath("~/GalleryFiles/"), "*.jpg");
        List<ListItem> files = new List<ListItem>();
        foreach (string filePath in filePaths)
        {
            string fileName = Path.GetFileName(filePath);

            files.Add(new ListItem(fileName, "~/GalleryFiles/" + fileName));
        }
        GridView1.DataSource = files;
        GridView1.DataBind();
    }


Что я уже пробовал:

эта функция дает все файлы .jpg из каталога GalleryFiles и показывает в gridview, и пользователь может удалить их, но я хочу показать их в поле изображения
этот код для удаления файлов
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{


        if (e.CommandName == "DeleteFile")
        {
            var index = Convert.ToInt32(e.CommandArgument);

            var row = GridView1.Rows[index];
            //select that column has filepath
            var filePath = row.Cells[0].Text;

            var fullFileName = Request.PhysicalApplicationPath + @"\GalleryFiles\" + filePath;

            if (File.Exists(fullFileName))
            {
                // Delete file
                File.Delete(fullFileName);


            }
            // Refresh data
            getimages();
        }

}

я надеюсь, что эти коды помогут!
заранее спасибо

1 Ответов

Рейтинг:
6

Karthik_Mahalingam

пробовать

protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
       {
           if (e.CommandName == "Select") // name of the command
           {
               var index = Convert.ToInt32(e.CommandArgument);
               var row = GridView1.Rows[index];
               var filePath = row.Cells[2].Text; // zero based index
               var fullFileName = Path.Combine( Server.MapPath( "GalleryFiles") + filePath);
               if (File.Exists(fullFileName))
               {
                   Image1.ImageUrl = fullFileName;
               }
           }
       }