Sharma Nitesh Ответов: 0

Создание кнопки динамически на основе данных, присутствующих в базе данных, и на основе этих динамически созданных событий нажатия кнопки create more button.


описание проблемы:
Я пытаюсь создать ASP: button control из кода позади в соответствии с деталями, доступными в базе данных. Кнопки также генерируются и отображаются в пользовательском интерфейсе. Когда я нажимаю на эти динамические кнопки, кнопки становятся невидимыми.
Итак, на странице Pre_Init event я попытался сгенерировать эти кнопки, но так как это событие Pre_Init, и я добавляю эти элементы управления кнопками в ASP:table, который находится в asp: table, давая ошибку. Причина ошибки заключается в том, что pre_init-это этап, который происходит еще до загрузки страницы, поэтому DIV/PANEL/TABLE не будет там для ссылки, поэтому код выдает ошибку для нулевой ссылки.

Чего я хочу достичь :-

Я хочу генерировать динамические кнопки (несколько) в соответствии с данными из базы данных и по событию щелчка этих динамически генерируемых кнопок, хотел создать больше кнопок. где все элементы управления должны присутствовать на странице.

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

public void CreateInstituteControl()
    {
        try
        {
            if (lstInst.Tables[0].Rows.Count > 0)
            {
                Table tblInst = new Table();
                TableRow tbRowInst = new TableRow();
                TableCell tc = new TableCell();
                int count = 0;
                foreach (DataRow inst in lstInst.Tables[0].Rows)
                {
                    count++;
                    string tcID = "tbCell";
                    tc.ID = "tcID";
                    tc.CssClass = ("tc");
                    Button bttn = new Button();

                    // bttn.EnableViewState = false;
                    bttn.ValidationGroup = "instCell";                    
                    //  bttn.Style.Add()
                    bttn.CssClass = ("bttnServices");
                    bttn.ID = bttn + "_" + inst["instituteid"].ToString() + "_" + inst["instituteName"].ToString();
                    bttn.Text = inst["instituteName"].ToString().Trim();
                    bttn.Attributes.Add("onclick", "return false");
                    //  bttn.Click += new System.EventHandler(CreateProviderControl);

                    //  grid_Institute.Rows[0].Controls.Add(bttn);

                    tc.Controls.Add(bttn);
                    tbRowInst.Controls.Add(tc);

                    if (count > 4)
                    {
                        tblInst.Rows.Add(tbRowInst);
                        TableRow temprow = new TableRow();
                        tbRowInst = temprow;
                        count = 0;
                    }


                }
                if (tbRowInst != null)
                {
                    tblInst.Rows.Add(tbRowInst);

                    panelInst.Controls.Add(tblInst);

                }

            }
            else
            {

            }
        }
        catch (Exception ex)
        {
            Response.Write("<script>alert('" + ex.Message.ToString() + "');</script>");
           
        }
    }

[no name]

http://www.c-sharpcorner.com/UploadFile/8911c4/page-life-cycle-with-examples-in-Asp-Net/

Maciej Los

Звучит как ответ.

Richard Deeming

Почему бы просто не использовать элемент управления ListView[^] чтобы сгенерировать кнопки?

0 Ответов