2011-05-09 4 views
1

주어진 디렉토리의 모든 이미지를 표시하고 싶습니다. 그 때문에 이미지를 표시하는 이미지 컨트롤이 있지만 해당 디렉토리의 이미지 당 자동으로 이미지 컨트롤을 표시하려고합니다. 내 디렉토리에서 5 개의 이미지가 있고 5 개의 이미지 컨트롤이 내 버튼 클릭 이벤트에 표시되어야한다고 가정합니다. 다음과 같이 주어진 디렉토리에서 두 이미지를 표시 button_click 이벤트 내가 작성한 코드는 다음과 같습니다 여기에 둥근 구멍에 스퀘어 페그에 맞게 노력하고 같은asp.net 3.5에서 이미지 컨트롤로 여러 이미지 표시하기

protected void btncompare_Click(object sender, EventArgs e) 
{ 
    Bitmap searchImage; 
    searchImage = new Bitmap(@"D:\kc\ImageCompare\Images\img579.jpg"); 
    string dir = "D:\\kc\\ImageCompare\\Images"; 

    DirectoryInfo dir1 = new DirectoryInfo(dir); 
    FileInfo[] files = null; 

    files = dir1.GetFiles("*.jpg"); 

    double sim; 
    foreach (FileInfo f in files) 
    { 
     sim = Math.Round(GetDifferentPercentageSneller(searchImage, new Bitmap(f.FullName)), 3); 
     if (sim >= 0.95) 
     { 


      string imgPath = "Images/" + files[0]; 
      string imgPath1 = "Images/" + files[1]; 
      Image1.ImageUrl = "~/" + imgPath; 
      Image2.ImageUrl = "~/" + imgPath1; 
      Response.Write("Perfect match with Percentage" + " " + sim + " " + f); 
      Response.Write("</br>"); 

     } 
     else 
     { 

      Response.Write("Not matched" + sim); 
      Response.Write("</br>"); 

     } 

    } 

} 
+0

하지만 여러 이미지 컨트롤에 표시하고 싶습니다. 얼마나 많은 이미지 컨트롤을 추가해야하는지 알 수 있습니다. 여기 내가 루프에 대한 모든 파일을 얻을 수 있지만 어디에 내가이 모든 이미지를 표시해야합니다 – Priya

답변

0

이 보인다. 이미지 컨트롤은 단일 이미지를 표시하도록 설계되었습니다.

여러 이미지를 표시하려면 여러 이미지 컨트롤을 사용하십시오. 나는 당신이 이것을하지 않는 이유는 당신이 당신이 보여줄 필요가있는 이미지의 수를 알지 못하기 때문이라고 생각합니다.

동일한 문제가 발생하면 이미지 디렉토리의 내용을 Repeater에 바인딩 할 수있는 것으로 변환합니다. 각 ItemTemplate에는 고유 한 Image 컨트롤이 포함되어 있으므로 해커가 필요없이 원하는만큼 많은 이미지를 표시 할 수 있습니다.

+0

u는 몇 가지 코드로 아이디어를 제공 할 수 있습니까? – Priya

관련 문제