---
title: "Förslag på hur jag skall göra?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/103495-förslag-på-hur-jag-skall-göra"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "MizzK"
published: "2004-05-13T10:51:34.000Z"
updated: "2004-05-13T18:38:53.000Z"
replies: 8
views: 405
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/dotnet/103495-förslag-på-hur-jag-skall-göra"
---

# Förslag på hur jag skall göra?

## #1 — MizzK, 2004-05-13T10:51Z

Är det ngn som har förslag hur jag skall lösa mitt "lilla" problem. 

Har en mängd produkter som skall hämtas från databasen och sedan skrivas ut på sidan. (testade med datagrid, fungerade utmärkt hit). När datan är presenterad skall användaren sedan kunna välja antalet av produkten, när kunden valt antal och klickat på "ändra" skall det komma nya rader med information, lika många rader som kunden valt antal. (Testade med For Next, men fick ej att fungera tillsamans med dg). Det rader som skall komma upp skall alla ser likadana ut.. Kunden skall här kunna välja tillbehör till produkten/na. 

hur löser jag detta? ngn som har förslag på smidig lösning. 

Eller om ngn vet av ngt smidigare upplägg där man kan anpassa tillbehör just efter en specifik produkt.? 

öppen för alla förslag!

ps. menar rent teoretiskt, kod får ni komma med om ni vill ;)

Permalänk: https://www.webforum.nu/p/103495

## #2 — P, 2004-05-13T11:02Z

Skapa en panel under och sedan lägger du till kontrollerna som du skapar programatiskt.
for i = 0 to count
dim tb as textbox
panles.controls.add(tb)
...

Något i den stilen

Permalänk: https://www.webforum.nu/p/1345426

## #3 — MizzK, 2004-05-13T11:32Z

i en datagrid eller liknande? ska testa det...

fler förslag?!?

Permalänk: https://www.webforum.nu/p/1345438

## #4 — Dino, 2004-05-13T12:01Z

Lek lite med denna kod.

```
.aspx

   <form runat="server">
        <asp:repeater id="repProduct" runat="server">
            <headertemplate>
                <table>
                <tr bgcolor="orange">
                    <td>&nbsp;</td>
                    <td>Name</td>
                    <td>Price</td>
                    <td>Quantity</td>
                    <td>&nbsp;</td>
                </tr>
            </headertemplate>
            <itemtemplate>
                <tr>
                    <td><asp:label id="lbRowID" runat="server" />.</td>
                    <td><asp:label id="lbPName" runat="server" /></td>
                    <td><asp:label id="lbPrice" runat="server" /></td>
                    <td><asp:textbox id="tbQuantity" width="25" runat="server" /></td>
                    <td><asp:button id="btGenerate" text="Generate" runat="server" /></td>
                </tr>
                <asp:panel id="pnlRows" visible="False" runat="server">              
                <tr>
                    <td>&nbsp;</td>
                    <td>
                        <asp:repeater id="repData" runat="server">
                            <headertemplate>
                                <table>
                            </headertemplate>
                            <itemtemplate>
                                <tr>
                                    <td><asp:textbox id="tbGrr" runat="server" /></td>
                                </tr>
                            </itemtemplate>
                            <footertemplate>
                                </table>
                            </footertemplate>
                        </asp:repeater>
                    </td>
                </tr>
                </asp:panel>  
            </itemtemplate>
            <footertemplate>
                </table>
            </footertemplate>
        </asp:repeater>
    </form>
```

 

```
.aspx.cs
   public class ExpandableRepeaterRow : System.Web.UI.Page
   {
      protected Repeater repProduct;

      private void Page_Load(object sender, System.EventArgs e)
      {
            if(!IsPostBack)
            {
                Bind();
            }
      }

      private void Bind()
      {
          ArrayList arr = new ArrayList();
          arr.Add(new Product("Small lamp", "39.23"));
          arr.Add(new Product("Large lamp", "69.23"));
          arr.Add(new Product("Medium lamp", "49.23"));
          arr.Add(new Product("Tiny lamp", "19.23"));
          arr.Add(new Product("Huge lamp", "99.23"));

          repProduct.DataSource = arr;
          repProduct.DataBind();
      }

      private void repProduct_ItemDataBound(object sender, System.Web.UI.WebControls.RepeaterItemEventArgs e)
      {
          if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
          {
              Product p = (Product)e.Item.DataItem;
              ((Label)e.Item.FindControl("lbRowID")).Text = (e.Item.ItemIndex + 1).ToString();
              ((Label)e.Item.FindControl("lbPName")).Text = p.Name;
              ((Label)e.Item.FindControl("lbPrice")).Text = p.Price;
          }
      }

      private void repProduct_ItemCommand(object source, System.Web.UI.WebControls.RepeaterCommandEventArgs e)
      {
         ((Panel)e.Item.FindControl("pnlRows")).Visible = true;
         Repeater rep = (Repeater)e.Item.FindControl("repData");
            
         string[] s = new string[int.Parse(((TextBox)e.Item.FindControl("tbQuantity")).Text)];
         rep.DataSource = s;
         rep.DataBind();
     }

   }

    public class Product
    {
        private string _name, _price;

        public Product(string name, string price)
        {
            this._name = name;
            this._price = price;
        }

        public string Name
        {
            get{return _name;}
            set{_name = value;}
        }

        public string Price
        {
            get{return _price;}
            set{_price = value;}
        }
    }
```

Permalänk: https://www.webforum.nu/p/1345454

## #5 — MizzK, 2004-05-13T12:04Z

du råkar inte ha den i vb kod =)

Permalänk: https://www.webforum.nu/p/1345459

## #6 — MizzK, 2004-05-13T12:13Z

fler förslag e välkommna! =D

Permalänk: https://www.webforum.nu/p/1345466

## #7 — P, 2004-05-13T13:57Z

Översätt c# koden med <http://authors.aspalliance.com/aldotnet/examples/translate.aspx>

Permalänk: https://www.webforum.nu/p/1345539

## #8 — MizzK, 2004-05-13T15:15Z

tanx.. lyckas med hjälp av förslag1 och 2 skriva ut en label, men lyckas inte med checkbox.. vet inte riktigt vad felet e.

hur skriver man inne i for next?!??

Permalänk: https://www.webforum.nu/p/1345589

## #9 — MizzK, 2004-05-13T18:38Z

så här gjorde jag men får inte min checkboxlist att repeteras så många gånger som jag vill

```
        If (E.CommandName = "andra") Then
            Dim counter As Integer
                        Dim nr As Integer = Integer.Parse(CType(E.Item.FindControl("pddAnt"), DropDownList).SelectedItem.Value)
            'Dim text As CheckBoxList = E.Item.FindControl("ingr")
            'text.Text = ""
            
            For counter = 1 To nr
                Dim text As CheckBoxList = E.Item.FindControl("ingr")
                CType(E.Item.FindControl("panelExingr"), Panel).Visible = True
                'E.Item.FindControl("panelExingr")

            Next counter
        End If
```

Permalänk: https://www.webforum.nu/p/1345774

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/103495-förslag-på-hur-jag-skall-göra
