08. december 2004 - 22:15
Der er
29 kommentarer og 2 løsninger
Indsæt indhold af en tekstfil i en textbox
Jeg vil gerne indsætte indholdet af filen x.txt i textboxen Textbox1. Fra et andet indlæg kan jeg se, at det må være noget med: Dim ? StreamReader reader = new StreamReader("x.txt") Textbox1.Text = reader.ReadToEnd().ToString() men hvordan skal den helt nøjagtig være i vb?
Annonceindlæg fra Immeo
08. december 2004 - 22:19
#1
Dim filepath As String = Server.Mappath("x.txt") Dim sR As IO.StreamReader sR = IO.File.OpenText(filepath) Dim theText As String = sR.ReadToEnd() TextBox1.Text = theText sR.Close()
08. december 2004 - 22:25
#2
Den siger BC30188: Declaration expected. til sR = IO.File.OpenText(filepath) Skal den have et namespace?
08. december 2004 - 22:30
#3
Mit gæt er at du bruger C# og basementjacks eksempel er i VB.NET !
08. december 2004 - 22:32
#4
Fordi koden ser meget korrekt ud.
08. december 2004 - 22:32
#5
Jeg bruger vb: <%@ Control Language="VB" %>. Har det noget at sige, at koden står i en .ascx fil?
08. december 2004 - 22:32
#6
Det skulle den ikke.. Men prøv at give den : Imports System Imports System.IO
08. december 2004 - 22:33
#7
arne_v neesgaard spørger jo efter noget i vb.. ;)
08. december 2004 - 22:34
#8
Men hvis du ikke bruger codebebind, så skal det nok være denne istedet: <%@ import Namespace="System.IO" %>
08. december 2004 - 22:35
#9
ja - men der må jo være en eller anden grund til at det ikke compiler
08. december 2004 - 22:37
#10
Den giver stadig samme fejl.
08. december 2004 - 22:39
#11
Hvad siger den med <%@ import Namespace="System.IO" %> og Dim sR As StreamReader sR = File.OpenText(filepath) ? (for nu at fortsætte lidt ud af dette spor)
08. december 2004 - 22:39
#12
Ser din fil sådan her ud: <%@ Page Language="VB" %> <%@ import Namespace="System.IO" %> <script runat="server"> Sub Page_Load() Dim filepath As String = Server.Mappath("x.txt") Dim sR As IO.StreamReader sR = IO.File.OpenText(filepath) Dim theText As String = sR.ReadToEnd() TextBox1.Text = theText sR.Close() End Sub </script> <html> <head> </head> <body> <form id="enForm" runat="server"> <asp:TextBox id="TextBox1" runat="server"></asp:TextBox> </form> </body> </html>
08. december 2004 - 22:40
#13
Altså udover det er control istedet for page...
08. december 2004 - 23:13
#14
Koden er: <%@ Control Language="VB" %> <%@ import Namespace="System.IO" %> <script runat="server"> ' Insert user control code here ' Sub Page_Load() Dim filepath As String = Server.Mappath("x.txt") Dim sR As IO.StreamReader sR = IO.File.OpenText(filepath) Dim theText As String = sR.ReadToEnd() TextBox1.Text = theText sR.Close() End Sub </script> <p> <asp:TextBox id="TextBox1" runat="server"></asp:TextBox> <!-- Insert content here --> </p> og det er som sagt en .ascx fil. Den giver nu en ny fejlmelding: System.Web.HttpException: Control '_ctl0_TextBox1' of type 'TextBox' must be placed inside a form tag with runat=server.
08. december 2004 - 23:17
#15
Det er vel også rigtigt - at en textbox skal være i en form ...
08. december 2004 - 23:19
#16
arne_v siger noget.. ;) En form med runat="server" er krævet, før den kan parse <asp:... />-tags..
08. december 2004 - 23:22
#17
Ja - men jeg trak bare en tekstbox over i designarealet, men så skal man åbenbart selv tilføje formtaget. Når det er tilføjet, så virker det!! Vil I smide et par svar?
08. december 2004 - 23:22
#18
Nå ja.. Hvis den melder fejl som at den ikke kan finde x.txt, så skal denne ligge i samme mappe som den .aspx der loader din .ascx ind.
08. december 2004 - 23:23
#19
Svar
08. december 2004 - 23:25
#20
giv alle points til basementjack
08. december 2004 - 23:26
#21
Hov hov.. Vi deler altså her..
08. december 2004 - 23:29
#22
hvis du insisterer
08. december 2004 - 23:31
#23
Delt. Og tak!
09. december 2004 - 20:42
#24
Lige et tillægsspørgsmål: æ, ø og å vises ikke i tekstboksen (.txt filen oprettet med Notepad) - er der en vej ud af det?
09. december 2004 - 20:50
#25
Prøv: sR = New IO.StreamReader(filepath, Encoding.Default)
09. december 2004 - 21:14
#26
Perfekt - igen noget, der virker. Tak!
09. december 2004 - 21:24
#27
Der står en grim, inaktiv scrollbar (dimmed da tekstens længde ikke berettiger en scrollbar) ude tilhøjre af tekstboksen - kan man få den væk?
09. december 2004 - 22:28
#28
Jeg iler med et svar givet af vores søn: farvelæg scrollbaren i samme farve som baggrunden - se
http://www.opfinderen.dk/sites/68/. Brug dem allesammen!
10. december 2004 - 16:36
#29
Det virker kun i IE.. Og ansees ikke som validt ifølge w3c. Men du kunne jo også give tekstboksen en mindre height og width, så scrollbar er nødvendigt, eller lave den til singleline?... :P
11. december 2004 - 01:06
#30
Det pudsige er, at teksten slet ikke berettiger til en scrollbar og formodentlig derfor er den dimmed, men hvorfor den overhovedet skal vises, forstår jeg ikke. Der skal stå så meget tekst, at den skal være multiline.
11. december 2004 - 01:10
#31
Men du har ret: det ser dødsygt ud i fx Opera.
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.