как получить пользовательские данные управления, когда они загружаются динамически - PullRequest
0 голосов
/ 30 марта 2011

У меня есть пользовательский элемент управления, который имеет некоторые свойства.

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);
            }
        }
    }

}

как реализовать цикл foreach в GetImages () для получения данных?

1 Ответ

1 голос
/ 30 марта 2011
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;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...