Avatar billede torotune Nybegynder
26. februar 2006 - 16:48 Der er 13 kommentarer og
1 løsning

Edit i datagrid

HEj,

Jeg har et datagrid med 3 collumns; En med et ID, en med en tekstbox og en med en edit-button.
Jeg vil gerne have det til at fungere sådan, at når jeg trykker "Hent tal" på min edit-button, så
hentes ObjRS("NytTal") (jf. nedenstående kode) ind i tekstboxen i samme række.

Når jeg tester min kode herunder udskrives "NytTal" i min label LabTest.text rigtigt alt efter ID'et.
Jeg er bare ikke helt sikker på hvordan jeg får tallet ind i den respektive tekstbox.

Mine collumns i dg'et:   


<asp:BoundColumn DataField="Id" SortExpression="Id" HeaderText="Id">

<asp:TemplateColumn HeaderText="Indtast tal">
<ItemTemplate>
      <asp:TextBox runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.Tal") %>'
      </asp:TextBox>
</ItemTemplate>                               
</asp:TemplateColumn>             
                                                                                                                         

<asp:TemplateColumn>         
<ItemTemplate>                                           
<asp:Button CommandName="Edit" runat="server" Text="Hent tal" />
</ItemTemplate>
</asp:TemplateColumn>

Min kode ved tryk på edit-button:


      Sub edit(sender as object, e as datagridcommandeventargs)
           
                  Dim TalIdColumn as TableCell = e.Item.Cells(0)
                  Dim TalIdColText as String = TalIdColumn.Text
                  Dim TalId as string
                 
              TalId = TalIdColumn.Text           
                                   
   
          StrSQL = "SELECT Tal.TalId, Tal.NytTal FROM Tal "
          StrSQL += "WHERE (((Tal.TalId)= " & TaID & "));"
                   
                  if objRs.read() then
                           
                       
                            LabTest.text = ObjRS("NytTal") 
                                           
            End If             
                    objRs.Close()
               
          End sub

Håber nogen kan hjælpe :-)
Avatar billede snepnet Nybegynder
26. februar 2006 - 21:06 #1
du kan finde din tekstboks med
e.Item.FindControl("txtTal") 'kræver at du giver den et id:
<asp:TextBox id="txtTal" runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.Tal") %>'
</asp:TextBox>
og du kan så sætte teksten på den.
bruger du ikke version 2.0?
mvh
Avatar billede torotune Nybegynder
26. februar 2006 - 22:50 #2
Hej Snep!

Hvordan sætter jeg teksten på den, for jeg kan ikke bare gøre:

e.Item.FindControl("txtTal") = ObjRs("NytTal")


Jo, jeg bruger 2.0 på min egen maskine, men ar problemer når jeg lægger noget ud på mit webhotel, det ser ikke ud til at de har opdateret deres Framework. - Er 2.0 stadig i BETA?
Avatar billede torotune Nybegynder
26. februar 2006 - 22:57 #3
Ahh.. det virker med

Dim txtTal as Textbox = e.Item.FindControl("txtTal")
txtTal.Text = ObjRS("NytTal")

:-)
Avatar billede torotune Nybegynder
27. februar 2006 - 00:03 #4
- Men der er måske mere enklere metoder i 2.0?
Avatar billede dr_chaos Nybegynder
27. februar 2006 - 08:48 #5
asp.net 2.0 blev færdig 7/11 sidste år.
Ja det kan gøres meget nemmere i asp.net 2.0
Avatar billede snepnet Nybegynder
27. februar 2006 - 09:21 #6
Hej igen torotune :o)

Godt du fik det til at virke (den var måskelig lige klejn nok den kommentar du fik kan jeg godt se - sorry).

Hvem er din udbyder? (det er meget tænkeligt at du kan få 2.0 på dit site med en opringning til dem).

mvh
Avatar billede torotune Nybegynder
27. februar 2006 - 23:16 #7
Hej igen, jeg bruger web10, men her er en opringning ikke mulig da de ikke er så stærke på support-området. Jeg brugte også en anden udbyder på et tidspunkt, som jeg mailede med. De var ikke så glade for at opdatere til 2.0 da de mente den var i beta, derfor var jeg heller ikke sikker. Jeg måtte i hvert fald i begge tilfælde finde ud af at omskrive tilbage til script der kunne læses af 1.1

Nå, men nu virker det her da fint. Forresten mens jeg har jer, er det muligt at køre en sub på en knap, hvorefter den selecter/deselecter alle i en <asp:CheckBoxList> ?
Avatar billede dr_chaos Nybegynder
28. februar 2006 - 08:42 #8
du kan bruge noget i denne stil:
Dim l As ListItem
For Each l In DincheckBoxList.Items
l.Selected = True
Next
Avatar billede torotune Nybegynder
05. marts 2006 - 14:02 #9
Perfekt!

Tak for hjælpen begge to, smid endelig svar :-)
Avatar billede dr_chaos Nybegynder
05. marts 2006 - 15:28 #10
svar :)
Avatar billede torotune Nybegynder
05. marts 2006 - 21:57 #11
Venter lige på snep..

Kan nogen af jer sige mig hvorfor jeg får denne fejlmeddelse:

'Public Sub Update_data(sender As Object, e As System.Web.UI.WebControls.DataGridItemEventArgs)' does not have the same signature as delegate 'Delegate Sub EventHandler(sender As Object, e As System.EventArgs)'.

Jeg har en DropDownList i mit datagrid:

<ItemTemplate>                                     
<asp:DropDownList id="Drp" runat="server" AutoPostBack="true" OnSelectedIndexChanged="Update_data" SelectedValue='<%# DataBinder.Eval(Container.DataItem, "ID") %>'>
</ItemTemplate>

Jeg får fejlen når jeg vælger noget i listen og den så kører sub'en:

Sub Update_data(sender As Object, e As DataGridItemEventArgs)
  'kode
End sub
Avatar billede snepnet Nybegynder
07. marts 2006 - 00:59 #12
et svar kommer her:

mht. til den fejl du får - så må du bruge en signatur der passer til dropdownlistens selectedindexchanged event, hvilket blot er :
Sub Update_data(sender As Object, e As EventArgs)
  'kode
End sub

mvh
Avatar billede snepnet Nybegynder
07. marts 2006 - 00:59 #13
vel gjorde det ej :o) - læste kun teksten, så ikke festen var overstået :oD
mvh
Avatar billede torotune Nybegynder
07. marts 2006 - 02:03 #14
Hej du,

Blev lige nødt til at lukke ned, men jeg vender lige tilbage med mit signature-problem hvis jeg får probs med det igen..!

Indtil da smid et svar på

http://www.eksperten.dk/spm/693158

og få dine points :-)
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