создание кнопок html в c # из ArrayList

#c# #html #asp.net-mvc

#c# #HTML #asp.net-mvc

Вопрос:

У меня есть список продуктов в моем c #, где я пытаюсь создать кнопку для каждого продукта в ProductList … Вот c#

         foreach(string product in ProductList)
        {
            Button button = new Button();
            button.ID = "blah";
            button.Text = "hi";
            //button.Attributes["src"] = "trash.png";
            
            button.Click  = new EventHandler(button_click);
            place.Controls.Add(button);
        }

  private void button_click(object sender, EventArgs e)
    {
        throw new NotImplementedException();
    }
  

и вот HTML

    <asp:PlaceHolder runat="server" ID="place" /><br />
  

Я не понимаю, почему кнопка не отображается на веб-странице. Кстати, это веб-страница MVC .net, если вы этого еще не поняли

Пожалуйста, помогите 🙂

Комментарии:

1. Это выглядит как Asp.net Веб-формы скорее MVC. Это действительно приложение MVC?

2. @Ramesh в чем разница?

3. Изначально Asp.Net были веб-формы, в которых вы создавали страницы .aspx и обработчики событий для страницы и элементов управления. Asp.Net MVC следует шаблону проектирования MVC, в котором вы добавляете контроллеры, представления и модели. В MVC вы не можете добавлять событие для управления, например, веб-формами. Пожалуйста, обратитесь seguetech.com/net-web-forms-vs-mvc чтобы понять больше.

Ответ №1:

Итак, это кричит как домашнее задание… Независимо от того, вам нужно настроить счетчик при просмотре списка продуктов. Отображение всего вашего кода, вероятно, поможет с вопросами в будущем.

     List<string> ProductList = new List<string>();
    int i;
  

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

        protected void Page_Load(object sender, EventArgs e)
    {
        ProductList.Add("Milk");
        ProductList.Add("Food");
        ProductList.Add("Cooked");
        ProductList.Add("Beef");

        foreach (string product in ProductList)
        {
            Button button = new Button();
            button.ID = this.ProductList[i].ToString();
            button.Text = this.ProductList[i].ToString();
            //button.Attributes["src"] = "trash.png";
            place.Controls.Add(button);
            i  ;
        }

    }

    
  

Комментарии:

1. почему мы добавляем increment, если это цикл foreach, а не цикл for?

2. Кроме того, это не hmoework … это для работы, но stackoverflow иногда помогает, когда я пытаюсь что-то делать за пределами моих знаний