2011-05-08 2 views
2

나는 내 DB에 ActivityType 필드가 있습니다. 값은 [1,2,3]입니다. 각 숫자는 활동 유형을 나타냅니다. gridview의 형식을 이미지로 표시하려고합니다.격자보기 표시 이미지

난 3 개 이미지

  • 활동 유형 1 = avtivity_choise.jpg

  • 활동 유형 2 = activity_text.jpg

  • 활동 유형 3 = activity_count.jpg

나는 템플릿 필드로 그렇게하려고 시도했지만 번호를 이미지 URL로 전송하려면 switch case 문이 필요합니다 ...

+0

? GridView for WPF ('System.Windows.Controls'), Windows Forms ('System.Windows.Forms') 및 ASP.NET ('System.Web.UI.WebControls')이 있습니다. –

답변

2

GridView.RowDataBound 이벤트를 처리 할 수 ​​있습니다. 다음과 같은 것을 사용하십시오.

void gridView_RowDataBound(Object sender, GridViewRowEventArgs e) 
{ 

    if(e.Row.RowType == DataControlRowType.DataRow) 
    { 
     int type = int.Parse(e.Row.Cells[typeCellIndex].Text); 
     Image img = (Image) e.Row.Cells[imageCellIndex].FindControl(imageID); 
     switch type 
     { 
      case 1: 
      { 
      img.ImageUrl = "avtivity_choise.jpg"; 
      } 
      ...... 
     } 

    } 

} 

또한 이미지 필드를 데이터베이스 필드에 바인드 할 수도 있습니다. 다음을 참조하십시오 : 당신이 언급하는의 GridView 어떤 종류의

http://msdn.microsoft.com/en-us/library/aa479350.aspx

http://csharpdotnetfreak.blogspot.com/2009/07/display-images-gridview-from-database.html

http://www.codeproject.com/KB/aspnet/imagegalleryingridview.aspx

+0

여기에서 내 문제에 대한 답변을 얻으려고합니다. 나는 학생들을 열거하는 그리드에 표시하고 싶은 두 개의 이미지를 가지고있다. 학생이 등록되었는지 아닌지에 따라 이미지 중 하나가 표시됩니다.이보기는 강하게 입력되며 어떻게 작동합니까? – user793468