ASP.NET dynamisch webcontrols van ID voorzien

Pagina: 1
Acties:

  • Rhapsody
  • Registratie: Oktober 2002
  • Laatst online: 23:17

Rhapsody

In Metal We Trust

Topicstarter
Hey,

is het mogelijk om dynamisch checkboxcontrols van een uniek ID te voorzien?


dus dat bij de eerste het id "chkItems1" is en bij de volgende "chkItems2" etc etc.

Het aantal checkboxen staat niet vast namelijk

Mathieu

🇪🇺 pro Europa!


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 16:14

gorgi_19

Kruimeltjes zijn weer op :9

Wat heb je tot nu toe al bedacht? Je kan ze namelijk best eenvoudig in een for-loopje plaatsen.

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • Rhapsody
  • Registratie: Oktober 2002
  • Laatst online: 23:17

Rhapsody

In Metal We Trust

Topicstarter
Ben al ff aan het klooien geweest

Maar ik maak gebruik van een server-control, en dan lukt het mij niet om een variabele (i) op te nemen in die servertag.

code:
1
2
<asp:CheckBox id="chkItems<%=i %>" runat="server" 
Font-Size="X-Small" Font-Names="arial"></asp:CheckBox>


werkt dus ook niet helaas.

Ik heb al een for loop je.

[ Voor 45% gewijzigd door Rhapsody op 16-12-2002 23:21 ]

🇪🇺 pro Europa!


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 16:14

gorgi_19

Kruimeltjes zijn weer op :9

Rhapsody schreef op 16 december 2002 @ 23:20:
Ben al ff aan het klooien geweest

Maar ik maak gebruik van een server-control, en dan lukt het mij niet om een variabele (i) op te nemen in die servertag.

code:
1
2
<asp:CheckBox id="chkItems<%=i %>" runat="server" 
Font-Size="X-Small" Font-Names="arial"></asp:CheckBox>


werkt dus ook niet helaas.
Waar plaats je deze gegevens in? In een datalist / datagrid?

Je hebt volgens mij ook een CheckBoxList control. Door middel van een datasource moet je ook eea kunnen regelen.
Ik heb al een for loop je.
:? Ik ben heel benieuwd hoe je dit dan voor elkaar krijgt......

[ Voor 15% gewijzigd door gorgi_19 op 16-12-2002 23:24 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • Rhapsody
  • Registratie: Oktober 2002
  • Laatst online: 23:17

Rhapsody

In Metal We Trust

Topicstarter
nou, ik lees wat gegevens uit een tabel, en elke 'row' moet een checkbox hebben en ook een uniek idee, vandaar dat ik elke checkbox dus van een uniek Id wil voorzien.

Ik maak geen gebruik van een datalist/datagrid omdat deze niet de vereiste functionaliteit hebben. Ik wil namelijk dat het mogelijk is om meerdere records te gelijk te bewerken. Niet alle velden maar 1 veld.

🇪🇺 pro Europa!


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 16:14

gorgi_19

Kruimeltjes zijn weer op :9

:? Ik zie het probleem nog steeds niet, maar goed... :P
Pseudocode
Visual Basic .NET:
1
2
3
4
5
6
7
8
9
Dim I as integer
Dim _control as new Control
For I = 0 to 10
    Dim chkBox as new Checkbox
    chkBox.ID = "chkBox" & I
    chkBox.Text = "De tekst"
    chkBox.Checked = False
    _control.Controls.add(chkBox)
Next

En op deze manier kan je dan dynamisch de door jouw gewenste structuur maken, door deze uit te bouwen. Deze structuur kan je bijvoorbeeld koppelen aan een placeholder control.

[ Voor 12% gewijzigd door gorgi_19 op 16-12-2002 23:36 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • Rhapsody
  • Registratie: Oktober 2002
  • Laatst online: 23:17

Rhapsody

In Metal We Trust

Topicstarter
Hartstikke bedankt, ben nu al heel eind de goede richting in.

Nu heb ik alleen nog dat ie elke keer een extra checkbox neer zet (1ste keer 1, volgende keer 2, daarna 3 etc etc)

is daar nog iets aan te doen?
code:
1
2
3
4
5
6
7
8
9
Dim chkBox as new Checkbox
    chkBox.ID = "chkItems" & i
    chkBox.Text = "Nr: " & i
    chkBox.Checked = False
    plh1.Controls.add(chkBox)


<asp:PlaceHolder id="plh1" runat="server" Visible="true">
</asp:PlaceHolder>


is een stukje van de code, de rest is niet belangrijk.

🇪🇺 pro Europa!


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 16:14

gorgi_19

Kruimeltjes zijn weer op :9

Rhapsody schreef op 16 december 2002 @ 23:47:
Hartstikke bedankt, ben nu al heel eind de goede richting in.

Nu heb ik alleen nog dat ie elke keer een extra checkbox neer zet (1ste keer 1, volgende keer 2, daarna 3 etc etc)

is daar nog iets aan te doen?
code:
1
2
3
4
5
6
7
8
9
Dim chkBox as new Checkbox
    chkBox.ID = "chkItems" & i
    chkBox.Text = "Nr: " & i
    chkBox.Checked = False
    plh1.Controls.add(chkBox)


<asp:PlaceHolder id="plh1" runat="server" Visible="true">
</asp:PlaceHolder>


is een stukje van de code, de rest is niet belangrijk.
Hoe bedoel je? Bedoel je per keer dat je hem opvraagt, dat er een checkbox bij komt? Of per regel? (1e regel 1, 2e regel 2, 3e regel 3, etc.)

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • Rhapsody
  • Registratie: Oktober 2002
  • Laatst online: 23:17

Rhapsody

In Metal We Trust

Topicstarter
ik heb alles in een tabel, en alle records komen op een nieuwe rij te staan (<tr>) .

Nu komt die placeholder daar dus ook in te staan elke keer, met elke keer 1 checkbox meer.

1ste regel staat 1 checkbox, 2de staan er 2 en zo verder.

🇪🇺 pro Europa!


  • ErectionJackson
  • Registratie: April 2000
  • Laatst online: 23-06-2017

ErectionJackson

Ff testen hoe lang een onderti

Dan moet je je Next statement direct onder plh1.Controls.add(chkBox) neerzetten, anders voegt ie telkens ook een Placeholder toe.

Ja ik blaat dit nou wel, maar ik twijfel nu ff omdat ik niet je precieze code weet. Probeer in ieder geval even met de plaats van je For en Next statements te spelen

[ Voor 64% gewijzigd door ErectionJackson op 17-12-2002 10:54 ]

Microsoft SharePoint oplossingen | www.onlinesamenwerken.nl | Persian Dance Helia


  • Rhapsody
  • Registratie: Oktober 2002
  • Laatst online: 23:17

Rhapsody

In Metal We Trust

Topicstarter
Ik zal het nog ff duidelijker uitleggen,

Ik maak een soort van datagrid, maar dan met de mogelijkheid om meerdere rijen tegelijk te kunnen bewerken.

Nu wil ik dat met checkboxen doen, dat men kan selecteren welke bewerkt moeten worden.
Het is nl. zo dat er ook maar 1 kolom bewerkt mag worden dus niet alle kolommen.

En dat lukt mij dus niet. :(

🇪🇺 pro Europa!


Verwijderd

Hmm je wilt dus eigenlijk gewoon door middel van een zoekfunctie ofzo dat er een lijst met artikelen komt bij in een datagrid.
Deze wil je dan allemaal door middel van een checkbox kunnen selecteren? en nadat je er een stuk of bijv 10 hebt geselecteerd dat je hier 1 kolom van kan veranderen.
Zo iets bedoel je?
Misschien dat er mensen zijn met ideeen hoe dit te doen

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 16:14

gorgi_19

Kruimeltjes zijn weer op :9

* gorgi_19 is heel lastig....

Volgens mij kan je dit doen door dynamisch een datagrid te bouwen. Met behulp van een template column voeg je een dynamisch een checkbox. Daarnaast heb je een label en een textbox, waarbij deze laatste standaard op invisible staat.
Vervolgens voeg je een handler toe en een autopostback.

In de handler cast je het sender (type object) (regel: sender as object; in de definitie van de sub) naar een checkbox. Vervolgens kan je het id uitlezen. Dit id kan je ophalen. Vervolgens kan je de textbox, welke in eerste instantie invisible was, visible maken en de label invisible, indien de checkbox aangevinkt is.

Het zal dan zoiets moeten zijn, of je moet wat anders bedoelen.

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • Rhapsody
  • Registratie: Oktober 2002
  • Laatst online: 23:17

Rhapsody

In Metal We Trust

Topicstarter
ok ik heb nu dit:

code:
1
2
3
4
5
6
7
8
9
10
<ItemTemplate>
<asp:HyperLink id="HyperLink1" NavigateUrl='
<%# DataBinder.Eval(Container, "DataItem.Ordernummer") %>' 
Text='<%# DataBinder.Eval(Container, "DataItem.Ordernummer") %>' 
runat="server"></asp:HyperLink>

<asp:CheckBox id="chk1" runat="server" AutoPostBack="True" 
Font-Names="arial" Font-Size="X-Small" 
OnCheckedChanged="Change"></asp:CheckBox>
</ItemTemplate>


Nu wil ik dat ie dus "<%# DataBinder.Eval(Container, "DataItem.Ordernummer") %>"
meegeeft als Id of als text aan die texbox. Maar hij zegt dat ik geen code blocks mag meegeven :S terwijl die hyperlink gewoon werkt.

Weet iemand hoe het wel moet? (de code geeft btw geen fout, heb de fout eruit gehaald)

[ Voor 36% gewijzigd door Rhapsody op 17-12-2002 20:13 ]

🇪🇺 pro Europa!

Pagina: 1