Avatar billede saudoo Nybegynder
28. november 2007 - 18:43 Der er 14 kommentarer og
1 løsning

Behandle textinput til at generer controls

Hej eksperten..

Jeg ved ikke om dette overhoved er muligt. Problemet er at de billeder der bliver lavet, skal kunne aktivere en handler i min vb-kode.

Så her er mit spørsmål.

Hvis man f.eks. havde følgende string:
"Dette er nu ikke så [bid=53] interessant!"

Ville man så kunne få koden til automatisk at generere note alá:

<asp:repeater id="lblEt" text="Dette er nu ikke så " runat="server" />
<asp:imagebutton id="btnTo" imageurl="53" runat="server"/>
<asp:label id="lblTre" text=" interessant!" runat="server" />
Avatar billede neoman Novice
28. november 2007 - 19:58 #1
Fortæl nærmere: det er ret uklart hvad der skal ske. Så vidt jeg forstår så ønsker du dynamisk at tilføje et eller andet - en hel repeater ? eller en knap + label i en eksisterende repeater ? Og hvad skal trigge denne begivenhed helt præcist ? En indtastning, eller noget du læser i en fil eller hva?

Du kan dynamisk tilføje server controls, eller modifcere deres indhold så some details please.
Avatar billede saudoo Nybegynder
28. november 2007 - 20:14 #2
Ja okay.. :P Jeg prøver igen så.

Jeg ved det er muligt dynamisk at indsætte controls via ens codebehind. Mit problem er at hvis man f.eks. har teksten: "Dette er nu ikke så [bid=53] interessant!" skal ASP.Net være istand til at dele den tekst op i tre controls. To labels som omgiver en imagebutton.

[bid=53] Skal omdannes til en imagebutton hvis 53 bruges f.eks. på commandargument.

Et eksempel kunne være hvis man skrev noget i en tråd i et forum.. eks:
"Det virker ikke videre klogt.. [glad.gif]<br />Måske skulle du... [tunge.gif]"

Her skulle den selv kunne gå ind og erstatte de steder hvor der står [glad.gif] og [tunge.gif] med imagebuttons. Dette er fordi jeg skal have et commandname og et commandargument vedlagt.
Avatar billede saudoo Nybegynder
28. november 2007 - 20:15 #3
hvis 53 bruges
skulle være
hvor 53 bruges
Avatar billede saudoo Nybegynder
28. november 2007 - 20:17 #4
Hov.. :P
<asp:repeater id="lblEt" text="Dette er nu ikke så " runat="server" />

Skulle selvfølgelig have været en label istedet..
Avatar billede neoman Novice
28. november 2007 - 20:20 #5
Hmm - stadig uklart.

Du vil have at en bruger taster noget og det øjeblik han taster return så skal den tekst som han lige har indtastet laves om til noget tekst som indeholder nogle buttons ?

Prøv lige at vise et step-by-step scenarie, for det som du skriver lyder ikke helt klart for mig:

1. bruger taster x-x-x
2. så sker der postback
3. brugerens linje  laves om til en ny linje med nogle knapper i
4. den nye linje har erstattet den gamle linje og nu sendes det hele tilbage til klienten

er det sådan ?
Avatar billede neoman Novice
28. november 2007 - 20:22 #6
og taster han i samme textarea/input hvor inputtet vises ? eller er der et indtastningsfelt hvor hver indtastning tilføjes et eller andet display felt ?
Avatar billede saudoo Nybegynder
28. november 2007 - 21:00 #7
Nej.. ikke helt. Næsten dog. :)

1. Bruger indtaster tekst i et felt
2. Der sker et postback, hvor indholdet gemmes i en database
3. Indholdet tages ud fra databasen og vha. forudbestemt difinition f.eks. [bid=*], bliver der erstattet med imagebuttons.

4. De imagebuttons kan trykkes på, hvorefter knap_command handleren bliver aktiveret.
Avatar billede saudoo Nybegynder
28. november 2007 - 21:02 #8
altså..

Teksten er bla bla [bid=2] tekst tekst tekst...

bliver til:

<asp:label ID="tekst" runat="server" text="Teksten er bla bla " />
<asp:imagebutton ID="linkbillede" runat="server" commandargument="2" />
<asp:label ID="tekst" runat="server" text=" tekst tekst tekst..." />
Avatar billede neoman Novice
28. november 2007 - 21:09 #9
du kan tilføje kontroller til en beholder som kan være et Panel eller PlaceHolder eller sted i en tabel eller whatever

f.eks. i VB

dim myImageButton as new ImageButton
myImageButton.ID="linkbillede"
myImageButton.CommandArgument="2"

AddHandler myImageButton.Click AddressOf navnet_på_min_click_handler

Panel1.Controls.Add(myImageButton)

tilsvarende for din label

jeg er nødt til at gå AFK, så hvis problemer vent på at en anden hjælper dig
Avatar billede saudoo Nybegynder
28. november 2007 - 23:05 #10
Hehe.. det bliver vi vist alle ramt af på et tidspunkt.. :P

Men hvis du på et tidspunkt når tilbage, kan det være du kan hjælpe mig, hvis der ellers ikke er andre der har undervejs.

Den kode du kom med, er ca. så langt som jeg selv er nået. Og det virker også efter hensigten. Men problemer et at jeg vil lave denne automatisk, ud fra den tekst der ligger i min String.
Avatar billede neoman Novice
29. november 2007 - 16:30 #11
ja og problemet deri er hvad?

Du skal finde en "klump" i din string og vide hvad den indeholder. Du kan bruge Regexp til det  - den matcher noget med forekomsterne af dette "noget" i din streng. Jeg er en rexexp idiot, så vent på mere kvalificere regexp hjælp - hvis det altså er der problemet ligger, ellers skriv specifikt hvad (og du bliver skudt for brug af meningsløse fyldord som "virker ikke" ) ! :)
Avatar billede saudoo Nybegynder
30. november 2007 - 15:09 #12
Av.. Det regexp har jeg absolut ingen erfaring med. Men prøver lige at læse lidt op på det.. :) du skal have tak.

Ligger du ikke et svar som tak for hjælpen?
Avatar billede neoman Novice
30. november 2007 - 15:39 #13
ok - prøv at søge på regexp i denne kategori, og ligeledes bladre lidt rundt her http://www.eksperten.dk/spm/Programmering/RegExp/

Hvordan man kalder det afh lidt af sproget, men princippet er det samme : finde noget som matcher/ikke matcher noget, eller at finde noget som er omkranset af nogle tegn osv.
Avatar billede neoman Novice
30. november 2007 - 15:39 #14
nå ja - et svar:)
Avatar billede saudoo Nybegynder
30. november 2007 - 19:47 #15
Og så takker jeg for at sender mig i den rigtige retning. :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester