2011-03-30 2 views
0

일부 속성이있는 사용자 정의 컨트롤이 있습니다.동적으로로드 할 때 사용자 정의 컨트롤 데이터를 얻는 방법

public partial class ImageUpload : System.Web.UI.UserControl 
{ 
    public Image img = new Image(); 
    protected void Page_Load(object sender, EventArgs e) 
    { 
     img.PG_Caption = txtImgCaption.Text; 
     img.PG_Visible = chkVisible.Checked; 
     img.File = fileImgUpload.FileBytes; 
     img.PG_FileName = fileImgUpload.FileName; 
    } 
} 

다른 사용자 컨트롤에서는 page_load에 첫 번째 사용자 정의 컨트롤 중 일부가로드됩니다.

public partial class ImagesTab : System.Web.UI.UserControl 
{ 
    public int Count { get; set; } 
    public List<Image> Images 
    { 
     get { return GetImages(); } 
    } 

    private List<Image> GetImages() 
    { 
     List<Image> lI = new List<Image>(); 
     foreach (Control ctl in plhImages.Controls) 
     { 

     } 
     return lI; 
    } 

    protected void Page_Load(object sender, EventArgs e) 
    { 
     if (!IsPostBack) 
     { 
      for (int i = 0; i < Count; i++) 
      { 
       Control ImageUpload = LoadControl("ImageUpload.ascx"); 
       plhImages.Controls.Add(ImageUpload); 
       Literal li = new Literal(); 
       li.Text = "<br />"; 
       plhImages.Controls.Add(li); 
      } 
     } 
    } 

} 

어떻게 GetImages()에서 foreach 루프를 구현하여 데이터를 가져 옵니까?

답변

1
private List<Image> GetImages() 
{ 
    List<Image> lI = new List<Image>(); 
    foreach (Control ctl in plhImages.Controls) 
    { 
     if (ctl is ImageUpload) lI.Add(((ImageUpload)ctl).img); 
    } 
    return lI; 
} 
+0

포스트 백 이후에는 컨트롤이없는 것 같습니다. – eyalb

+0

@eyalb :이'GetImage()'메서드를 어디에서 사용하고 있습니까? –

관련 문제