Avatar billede stinejh1980 Nybegynder
02. november 2005 - 16:25 Der er 32 kommentarer og
1 løsning

Tjekke om label er fyldt

Jeg har en gem knap som fylder en label, men jeg vil gerne have den til at tjekke om label er fyldt først, så teksten ikke står der 2 gange.

Nu har jeg skrevet:

    Sub BtnVis_Click(sender As Object, e As EventArgs)
        if lblvis.text <> "" then
        lblvis.text=""
            else
            LblVis.text += "<table class='Text' cellspacing='0' cellpadding='2' width='600' border='1' bordercolor='#000000'>"
            LblVis.text += "<tr bgcolor='#cccccc'><td colspan='4'>Lim/Sammensyning</td></tr>"
            LblVis.text += "<tr><td>Traadtykkelse</td><td>" & TxtTraadtykkelseResultat.text & "</td><td>Antal ticklers</td><td>" & TxtAntalTicklersResultat.text & "</td></tr>"
            LblVis.text += "<tr><td>Smbredde crosscut</td><td>" & TxtSomCrossResultat.text & "</td><td>Ticklers vindue</td><td>" & TxTicklersVinduetResultat.text & "</td></tr>"
            LblVis.text += "<tr><td>Smbredde verti/horisont</td><td>" & TxtSomVerHorResultat.text & "</td><td>Vinduer</td><td>" & DropVindue.SelectedItem.text & "</td></tr>"
            LblVis.text += "<tr><td>Nummerdug i vert. smbred</td><td>" & TxtNrDugVerSomResultat.text & "</td><td>V1</td><td>" & TxtV1.text & "</td></tr>"
            LblVis.text += "<tr><td>Nummerdug i hori. smbred</td><td>" & TxtNrDugHorSomResultat.text & "</td><td>V2</td><td>" & TxtV2.text & "</td></tr></table>"
        end if
    End Sub

Men så skal man trykke 2 gange på "gem" hvis den er fyldt

/ElvStine
Avatar billede snepnet Nybegynder
02. november 2005 - 21:28 #1
hej elvstine

du laver en += på teksten.... du kan nøjes med en = hvis du bare vil have teksten ind.
det kan være hensigtsmæssigt at lave den slags med en StringBuilder :

// en stringbuilder
Dim sb as new System.Text.StringBuilder()
// så kan du sætte den tekst ind du vil
sb.Append("hej")
sb.Append("med")
sb.Append("dig")
// og til sidst sørge for at din label for værdien
lblVis.Text = sb.ToString()

og så synes jeg det er meget html du skriver manuelt.... det kan man i vid udstrækning slippe for med asp.net

du skriver for øvrigt at det er en gem knap du har, men din sub hedder BtnVis_Click... er det den rigtige kode du har sendt?

mvh
Avatar billede stinejh1980 Nybegynder
03. november 2005 - 09:14 #2
Jeg er ikke så meget en haj til ASP.NET at jeg har styr på de ting - der er mange funktioner som jeg ikke har prøvet endnu. Hvor skal jeg så sætte denne StringBuilder ind?? Og grunden til jeg har += er fordi at jeg ikke vil have det hele til at står på en linie og så vidt jeg forstår er det sådan man strukturere sin kode.

Ja det er den rigtige kode. Det er fordi det er mit alternativ, da jeg ikke kunne få teksten overført til en ny side vha codebehind og printet ud derfra. Når man trykker på gem, bliver info gemt i en ny database, samt vist i en label i bunden denne label printer jeg så ud via Java Script.

/ElvStine
Avatar billede stinejh1980 Nybegynder
03. november 2005 - 09:22 #3
Jeg glemte vist at sige at jeg har ca 15 seperate tabeller som skal vises i denne label før det skal printes ud, så en stringbuilder kan vist ikkeb håndtere alle disse, eller skal jeg bare kalde den sb1, sb1, etc??
Avatar billede stinejh1980 Nybegynder
03. november 2005 - 09:31 #4
Stringbuilder virker ikke hvis jeg sætter den ind i min BtnVis_Click.

Så skriver den bare teksten ud som står i de felter og ikke værdien af det der er indtastet i tekstfelerne.

Eks:
TxtTraadtykkelseresultat.text
Avatar billede snepnet Nybegynder
03. november 2005 - 10:34 #5
ok ... det var mange ting :o)

stringbuilderen er den rigtige måde at lave den slags stringoperationer, og du skal ikke være nervøs for kapaciteten i den.
det har ikke noget med stringbuilderen at gøre, hvis du får skrevet TxtTraadtykkelseresultat.text ud istedet for indholdet - det er givetvis fordi du gør sådan her:
sb.Append("TxtTraadtykkelseresultat.text")
istedet for sådan her
sb.Append(TxtTraadtykkelseresultat.text)

hvad mener du med at du ikke kan få overført teksten fra den ene side til den anden? - det er der ikke noget problem i normalt.

mht til det med += så er det også kun på den første linie at du skal lave være med at gøre det:
LblVis.text += "<table class=..... - her skulle du bare skrive LblVis.text = "<table class=.....
i resten af linierne skal du self. bevare +=

og så synes jeg som nævnt at det er meget html du skriver manuelt - prøv at se noget som dette

<asp:PlaceHolder id="ph" runat="server" />

og i din code-behind:

'opret en tabel
Dim table as new Table()
Dim row as new TableRow()
Dim cell as new TableCell()

'smid rækken ind i tabellen
table.Rows.Add(row)
'skriv noget i cellen
cell.Text = "hej"
'tilføj cellen til rækken
row.Cells.Add(row)

'og du kan self. fortsætte
row = new TableRow()
cell = new TableCell()
cell.Text = "med"
row.Cells.Add(cell)
table.Rows.Add(row)

row = new TableRow()
cell = new TableCell()
cell.Text = "dig"
row.Cells.Add(cell)
table.Rows.Add(row)

'til sidst kan du så lægge tabellen ind i din placeholde på siden
ph.Controls.Add(table)

hvis du skriver om du bruger version 1.1 eller version 2.0 - skal jeg sende dig et eksempel på det med at overføre diverse fra den ene siden til den anden - uden at bruge querystring og sessionvariable ell.

mvh
Avatar billede stinejh1980 Nybegynder
03. november 2005 - 13:49 #6
Min opgave er data fra db samt taster manuelt i tekstfelter, dette fører jeg over i label via BtnVis og denne label skriver jeg ud via java. Så alt dette med tabel er egentlig dobbelt for det står allered op i tekstfelterne - mit problem er bare at jeg vil ikke have tekstfelterne med på udskriften og derfor skal det ligges i label først.

Det jeg ikke kan ser er:
Hvorfor er dette så smart, når det reelt set er det samme jeg gør med HTML.Og den tekst som skal stå i label er ikke fast defineret.

/Elvstine
Avatar billede snepnet Nybegynder
03. november 2005 - 17:57 #7
hvis det blot er fordi dine tekstbokse ikke må ligne tekstbokse på udskriften - kan du style dig ud af det, men jeg synes egentlig det er en udmærket løsning at styre udskriftpræsentationen selvstændigt, hvilket du så også gør.

serverkontroller renderes (sendes til klienten som html) udfra et regelsæt, og regelsættet er afhængig af klienten (den browser brugeren benytter til at kigge på siden med).
hvis du skriver din html ud selv - skal du selv sørge for at ændre html'en afhængig af de browser der besøger siden, hvilket der ikke er megen idé når funktionaliteten allerede er lavet.

skriver du html som du gør - får du ingen kontrol af om tingene er iorden på kompileringstidspunktet, og du får heller ikke en lækker objektmodel at arbejde med.

principielt kunne du jo lave en Response.Write("den html du ønsker på siden") for alt hvad du laver, men så ville der ikke være nogen grund til at benytte asp.net.

mvh
Avatar billede stinejh1980 Nybegynder
04. november 2005 - 14:43 #8
Jeg kan godt se hvad du siger mht. serverkontrol, men jeg har bare lidt svært ved at overskue hvordan det skal gøres når jeg ikke ved hvor mange informationer brugeren taster ind.

Antallet af tabeller er altid givet, men det er ikke sikkert at alle textfelter i tabellen er fyldt ud.

Strukturen i en tabel er:

Overskrift
Text    Textbox          Text    Textbox          Text    Textbox         
Text    Textbox          Text    Textbox          Text    Textbox         
Text    Textbox          Text    Textbox          Text    Textbox         
Text    Textbox          Text    Textbox          Text    Textbox         
Text    Textbox          Text    Textbox          Text    Textbox   

Derfor er det også irriterende (med html på denne måde) når textboxen ikke er fyldt ud, så viser den alligevel teksten og en tom celle, som reelt set ikke behøvede at blive printet.

/ElvStine
Avatar billede snepnet Nybegynder
06. november 2005 - 11:04 #9
du kan spørge på indholdet af det indtastede når du bygger din tabel op - fx.:
if  not TxtSomCrossResultat.Text = String.Emty
  'der står noget i tekstboksen - så du skal putte noget ind i tabellen
end if

mvh
Avatar billede stinejh1980 Nybegynder
11. november 2005 - 14:56 #10
Så er jeg tilbage :-)

Hvis jag har en tabel som denne:

<table class="Text" id="Skaering" cellspacing="0" cellpadding="0" width="600" border="1">
<tr bgcolor="#cccccc">
<td>Skæring</td>
<td>&nbsp;</td>
<td>Udført af</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>Design skabelon</td>
<td><asp:TextBox id="TxtSkabelonnr" runat="server" TextMode="SingleLine" /></td>
<td>Stoftype 1</td>
<td><asp:TextBox id="Txtstof1" runat="server" TextMode="SingleLine" /></td>
<td>Lotno 1</td>
<td><asp:TextBox id="Txtfarve1" runat="server" TextMode="SingleLine" Width="50" /></td>
</tr>
<tr>
<td>Design fil</td>
<td><asp:TextBox id="TxtDesignfilnt" runat="server" TextMode="SingleLine" /></td>
<td>Stoftype 2</td>
<td><asp:TextBox id="Txtstof2" runat="server" TextMode="SingleLine" />
</td>
<td>Farve 2</td>
<td><asp:TextBox id="Txtfarve2" runat="server" TextMode="SingleLine" Width="50" /></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>Stoftype 3</td>
<td><asp:TextBox id="Txtstof3" runat="server" TextMode="SingleLine" /></td>
<td>Farve 3</td>
<td><asp:TextBox id="Txtfarve3" runat="server" TextMode="SingleLine" Width="50" /></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>Stoftype 4</td>
<td><asp:TextBox id="Txtstof4" runat="server" TextMode="SingleLine" /></td>
<td>Farve 4</td>
<td><asp:TextBox id="Txtfarve4" runat="server" TextMode="SingleLine" Width="50" /></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>Stoftype 5</td>
<td><asp:TextBox id="Txtstof5" runat="server" TextMode="SingleLine" /></td>
<td>Farve 5</td>
<td><asp:TextBox id="Txtfarve5" runat="server" TextMode="SingleLine" Width="50" /></td>
</tr>
</table>

Hvis der så kun er data ved Stoftype 1+2 samt Farve 1+2, hvordan får jeg så vist disse i en label, med denne struktur (Og den samtidig osse kan bruges hvis 3+4+5 er fyldt):

Text    Data          Text    Data          Text    Data         
Text    Data          Text    Data          Text    Data         
Text    Data          Text    Data          Text    Data         
Text    Data          Text    Data          Text    Data         
Text    Data          Text    Data          Text    Data
Avatar billede snepnet Nybegynder
12. november 2005 - 11:55 #11
Du har en meget fin objektmodel i serverkontrollerne, som giver dig masser af muligheder for at kigge på hvordan forholdende er i dem når en bruger laver et postback.

hvis din tabel var angivet med runat="server" kan du trisse ned igennem den programmatisk sådan her:

// for hver række i tabellen
foreach(TableRow tr in Skaering.Rows)
{
  // find den tekstboks du vil undersøge:
  TextBox tb = tr.Cells[x].Controls[0] as TextBox;
  if(tb.Text != String.Emtpy)
  {
    // gør hvad der skal gøre når der står noget i tekstboksen
  }
}

du har gode muligheder for at gøre det meget generisk - f.eks. ville det ikke være noget problem at kigge alle celler igennem, og gøre noget hvis nogle af dem indeholder tekstbokse med indhold:

foreach(TableCell tc in tr.Cells)
{
  // er der nogle kontroller i cellen
  if(tc.HasControls())
  {
    // så prøver vi at se om det er en tekstboks
    TextBox tb = tc.Controls[0] as TextBox;
    if(tb != null)
    {
      // og hvis det er tilfældet kan vi så kigge på den
      string indhold = tb.Text;
    }
  }
}

der er mange muligheder for at arbejde med tingene på den måde....

man kan nok ikke kalde det et svar på dit spørgsmål, men jeg synes du skal begynde at arbejde lidt med kontrollerne på den måde.... der dukker mange forrygende ting op når man kommer lidt ind under huden på det - hvilket nok vil gøre det ganske nemt for dig at realisere et scenarie som det du beskriver.

mvh
Avatar billede stinejh1980 Nybegynder
14. november 2005 - 10:02 #12
alt dette skal jeg skrive i min codebehind ikke???

Jeg har prøvet codebehind før, men jeg kunne ikke få det til at virke. Da overførte jeg data fra tekstfelterne til en ny side med labels for derefter at printe det ud, men jeg kunne aldrig få data med og tyede derfor til java mht print.

Jeg prøver lidt at arbejkde med det.

/Elvstine
Avatar billede snepnet Nybegynder
14. november 2005 - 10:13 #13
det har ikke noget betydning for funktionaliteten i dit program om du skriver i code-behind filer, eller direkte i aspx-filen.
det undrer mig dog at du har haft problemer med at få det til at virke.... hvilket udviklingsmiljø (hvis noget) bruger du? - og hvilken version af frameworket?

mht. til det med at overføre variable - så check lige denne her igen:
03/11-2005 10:34:09

mvh
Avatar billede stinejh1980 Nybegynder
14. november 2005 - 11:53 #14
jeg laver det i codebehind, men skal jeg ikke putte det i en funktion eller class??
Avatar billede stinejh1980 Nybegynder
14. november 2005 - 11:59 #15
Ok jeg fandt ud af det, jeg satte det bare ind i en sub på selve .aspx siden.
Avatar billede stinejh1980 Nybegynder
14. november 2005 - 12:06 #16
Jeg er nu ved at prøve // for hver række i tabellen

foreach(TableRow tr in Skaering.Rows)
{
  // find den tekstboks du vil undersøge:
  TextBox tb = tr.Cells[x].Controls[0] as TextBox;
  if(tb.Text != String.Emtpy)
  {
    // gør hvad der skal gøre når der står noget i tekstboksen
  }
}

men det er da c# eller ++ er det ikke?? (Jeg bruger VB)
Avatar billede snepnet Nybegynder
14. november 2005 - 12:32 #17
jo - det er C#... prøv noget i denne stil istedet:

Dim tr As TableRow
For Each tr In Skaering.Rows
  ' find den tekstboks du vil undersøge:
  Dim tb As TextBox =  tr.Cells(x).Controls(0) as TextBox
  If tb.Text <> String.Emtpy Then
    ' gør hvad der skal gøre når der står noget i tekstboksen
  End If
Next

du kan få hjælp til at oversætte her:
http://www.ragingsmurf.com/vbcsharpconverter.aspx

mvh
Avatar billede stinejh1980 Nybegynder
14. november 2005 - 13:02 #18
Jeg har fyldt de tomme felter med -

Så jeg har istedet skrevet          
If tb.Text <> "-" Then

Men den kan ikke finde ud af skaering.rows, selvom min tabel har skaering som id.
Fejlmeddelelse: Navnet 'Skaering' er ikke blevet erklæret
Avatar billede snepnet Nybegynder
14. november 2005 - 13:12 #19
du skal angive tabellen med runat="server"
mvh
Avatar billede stinejh1980 Nybegynder
14. november 2005 - 13:42 #20
Jeg kender ikke at dimme på denne måde

Dim tb As TextBox =  tr.Cells(x).Controls(0) as TextBox

Hvorfor skriver den afslutning af sætning var forventet?
Avatar billede stinejh1980 Nybegynder
14. november 2005 - 14:34 #21
Hvis jeg så blakker det ud og skriver:

        Dim tb As TextBox '=  tr.Cells(0).Controls(0) as TextBox
       
        For Each tr In Skaering.Rows
        ' find den tekstboks du vil undersøge:
        If tb.Text <> "-" Then
        ' gør hvad der skal gøre når der står noget i tekstboksen

Så får jeg denne fejl
Detaljer om undtagelse: System.InvalidCastException: Den angivne ændring er ugyldig.

Kildefejl:


Linje 598:        Dim tb As TextBox '=  tr.Cells(0).Controls(0) as TextBox
Linje 599:       
Linje 600:        For Each tr In Skaering.Rows
Linje 601:        ' find den tekstboks du vil undersøge:
Linje 602:        If tb.Text <> "-" Then

Det er lidt svært med denne kode når man ikke har prøvet det før.
Jeg har søgt mange steder på nettet, men de beskriver det knudret.
Avatar billede stinejh1980 Nybegynder
15. november 2005 - 14:52 #22
Jeg gav op.
For den beskrivende tekst til tekstfelterne skal altid være der.
Prøver engang når jeg har bedre tid.
Avatar billede snepnet Nybegynder
16. november 2005 - 18:21 #23
sorry - har ikke været hjemme.
- du må sige til hvis der er noget jeg kan hjælpe med
mvh
Avatar billede snepnet Nybegynder
16. november 2005 - 18:21 #24
(altså når du får tid igen :o)
Avatar billede stinejh1980 Nybegynder
13. juli 2006 - 16:30 #25
Så er jeg tilbage :-) Du har dog hjulpet mig med at par andre ting i mellemtiden - tak for det.

Jeg opgav mht. til at fylde min label på den måde du nævnte, men jeg kan bruge den funktion et andet sted nu.

Min Db:

OrderID    Product ID    OneDesign     OD_Char    OD_Model    OD_Type    Boat    Sailtype    areal
1001        yes    Light    FBMA01    Spinnaker    -    -    -
1001    b    no    -    -    -    Luffe37    Main    23
1001    c    yes    Heavy    DYSPLITO    Main    -    -    -
1002    a    no    -    -    -    HalbergRassy    Jib    15
1002    b    no    -    -    -    Bianca    gen   
1002    c    yes    Medium    DRMA05    Jib    -    -    -
1002    d    no    -    -    -    Oceanis    furl    21
1003    a    yes    All-round    BBSA01    Jib    -    -    -
1003    b    yes    Light    C-LW-GN-PR-01    Main    -    -    -
1003    c    yes    Heavy    C-LW-GN-TA-01    Spinnaker    -    -    -
1003    d    no    -    -    -    Sigma 38    head    18
1003    e    no    -    -    -    Katemaran    main    19
1004    f    yes    Light    A101MA01    Spinnaker    -    -    -

Der skal laves udtræk fra DB. Select * from Db where OrdreID= 1002

Derefter skal data vises, men ud fra OneDesign.

På de poster hvor der er yes i onedesign skal data fra felterne _Characteristics, OD_Model og OD_Type vises, og på de poster hvor onedesign er no skal data fra felterne Boat, Sailtype og areal vises

Output bliver således:

Products in Order 1002

Onedesign:
OD_Char    OD_Model    OD_Type
Medium    DRMA05    Jib

Regular sails:
Boat    Sailtype    areal
HalbergRassy    Jib    15
Bianca    gen   
Oceanis    furl    21

Der kunne jeg vel bruge den stringBuilder du snakker om.

Mvh ElvStine
Avatar billede stinejh1980 Nybegynder
13. juli 2006 - 16:31 #26
Ok det virker forvirrende, da stukturen smuttede jeg prøver igen.
DB:
OrderID    Product ID    OneDesign     OD_Char    OD_Model    OD_Type    Boat    Sailtype    areal
1001        yes    Light    FBMA01    Spinnaker    -    -    -
1001    b    no    -    -    -    Luffe37    Main    23
1001    c    yes    Heavy    DYSPLITO    Main    -    -    -
1002    a    no    -    -    -    HalberRassy    Jib    15
1002    b    no    -    -    -    Bianca    gen   
1002    c    yes    Medium    DRMA05    Jib    -    -    -
1002    d    no    -    -    -    Oceanis    furl    21
1003    a    yes    All-round    BBSA01    Jib    -    -    -
1003    b    yes    Light    C-LW-GN-PR-01    Main    -    -    -
1003    c    yes    Heavy    C-LW-GN-TA-01    Spinnaker    -    -    -
1003    d    no    -    -    -    Sigma 38    head    18
1003    e    no    -    -    -    Katemaran    main    19
1004    f    yes    Light    A101MA01    Spinnaker    -    -    -
Avatar billede stinejh1980 Nybegynder
13. juli 2006 - 16:31 #27
Nej det virker ikke.
Avatar billede stinejh1980 Nybegynder
13. juli 2006 - 16:45 #28
Jeg prøver at adskille:

OrderID    |    Product ID    |    OneDesign     |    OD_Char    |    OD_Model    |    OD_Type    |    Boat    |    Sailtype    |    areal    |
1001    |    a    |    yes    |    Light    |    FBMA01    |    Spinnaker    |    -    |    -    |    -    |
1001    |    b    |    no    |    -    |    -    |    -    |    Luffe37    |    Main    |    23    |
1001    |    c    |    yes    |    Heavy    |    DYSPLITO    |    Main    |    -    |    -    |    -    |
1002    |    a    |    no    |    -    |    -    |    -    |    HalberRassy    |    Jib    |    15    |
1002    |    b    |    no    |    -    |    -    |    -    |    Bianca    |    gen    |    28    |
1002    |    c    |    yes    |    Medium    |    DRMA05    |    Jib    |    -    |    -    |    -    |
1002    |    d    |    no    |    -    |    -    |    -    |    Oceanis    |    furl    |    21    |
1003    |    a    |    yes    |    All-round    |    BBSA01    |    Jib    |    -    |    -    |    -    |
1003    |    b    |    yes    |    Light    |    C-LW-GN-PR-01    |    Main    |    -    |    -    |    -    |
1003    |    c    |    yes    |    Heavy    |    C-LW-GN-TA-01    |    Spinnaker    |    -    |    -    |    -    |
1003    |    d    |    no    |    -    |    -    |    -    |    Sigma 38    |    head    |    18    |
1003    |    e    |    no    |    -    |    -    |    -    |    Katemaran    |    main    |    19    |
1004    |    f    |    yes    |    Light    |    A101MA01    |    Spinnaker    |    -    |    -    |    -    |
Avatar billede snepnet Nybegynder
14. juli 2006 - 12:49 #29
Hold da op en gammel sag :o)
Du er velkommen til at lægge en emailadd. her - så kan vi lige tage formatet over en mail istedet :o)
Mvh
Avatar billede stinejh1980 Nybegynder
14. juli 2006 - 14:16 #30
stinejh-hotmail.com
Avatar billede stinejh1980 Nybegynder
27. marts 2007 - 08:24 #31
Hej Jeppe.

Jeg har brugt dynamisk load mange gange nu.

Det er længe siden dette spsm blev oprettet, og jeg har lært en masse siden.

Hvis du svarer får du point:-)

Mvh Stine
Avatar billede stinejh1980 Nybegynder
27. marts 2007 - 08:58 #32
Hvis nogen kunne bruge en dynamisk loaded label kommer den her:

    Function CreateLabel()
    Dim MyLabel As Label = New Label

        MyLabel = New Label
        MyLabel.Text = "There is a problem finding your User ID in the database<br><br>"
        MyLabel.CssClass = "AccesDenied"
        LblMessage.Controls.Add(MyLabel)

        MyLabel = New Label
        MyLabel.Text = "Please Contact:<br>Stine Juhl-Hansen<br>e-mail: 123@hotmail.com<br>Tel.: +45 00 00 00 00"
        LblMessage.Controls.Add(MyLabel)

        MyLabel = New Label
        MyLabel.Text = "<br><br> or <br><br> Avril Smith<br>e-mail: 123@hotmail.com<br>Tel.: +45 00 00 00 00"
        LblMessage.Controls.Add(MyLabel)

    End Function

Og her er koden til den label jeg fylder:

<asp:label id="LblMessage" runat="server"></asp:label>
Avatar billede snepnet Nybegynder
28. marts 2007 - 17:17 #33
Haha ... Ja er du vimmer det er da en ældre sag :o)
Mvh
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