Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


tråda en streamreader

Postades av 2009-06-25 12:51:20 - Joakim Åhl, i forum c# (c-sharp), Tråden har 4 Kommentarer och lästs av 1237 personer

det jag vill göra är att ladda en sor text fil ca 7Mb. Detta tar sin lilla stund.Så jag vill att programmet skall visa en progressbar.

Problemet blir att programmet löser sig tills filen är laddad.

Jag tänkte då lägga detta in tråd och låta det köra i bakgrunden. Problemet är att streamreader är en tråd med sp jag får fel när jag sörsöker komma åt streamreadern.

<code>

private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
{

string path = (@"c:\swedish.txt");

using (StreamReader sr = new StreamReader(@"c:\swedish.txt", Encoding.GetEncoding(1252), true))
{
for (String Line = sr.ReadLine(); Line != null; Line = sr.ReadLine())
{
textBox3.Text = textBox3.Text + Line;
System.Threading.Thread.Sleep(1000);
}
}

e.Result = 100;

}

text3.text = text3.text + Line; ger mig ett fel som säger att källan till text3 kommer från en tråd och kan inte accessas.

någon lössing på detta?
</code>


Svara

Sv: tråda en streamreader

Postades av 2009-06-25 13:05:13 - Peter Hageus

Kika på Invoke och InvokeRequired, Winforms kontroller får inte anropas från bakgrundstrådar.

Jag hade nog lagt upp det lite annorlunda hursomhelst, känns lite skevt att din bakgrundstråd ska ha en referens till en gui-komponent.


Svara

Sv:tråda en streamreader

Postades av 2009-06-25 15:29:11 - Oskar Johansson

Jag tror att backgroundworkern har någon metod + event för att skicka saker från arbetstråden till huvudtråden. Typ progress eller report eller något sådant.

Annars, som sagt, Invoke, eller BeginInvoke (och ev. EndInvoke.) För att snygga till det lite så kan du skapa en liten metod som heter typ UpdateStatus(string status); eller liknande, och låta den i sin tur sköta invoke


Svara

Sv: tråda en streamreader

Postades av 2009-06-25 18:07:50 - André Claesson

Om du ska kunna ha en progressbar måste du i förväg veta exakt hur många rader det är i filen. I alla fall om du läser in rad för rad som nu istället för byte för byte.

Du kan troligen på ett enklare sätt få till allt detta genom att göra allt i UI-tråden och slänga in en:
Application.DoEvents()

Annars är Invoke-metoderna vad jag brukar rekommendera.


Svara

Sv: tråda en streamreader

Postades av 2009-06-25 22:44:43 - Simon Dahlbacka

..eller så läser du upp dej på asynkront I/O http://msdn.microsoft.com/en-us/library/kztecsys.aspx även om exemplet på just den sidan kanske inte är det bästa..


Svara

Nyligen

  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper
  • 16:36 Allt du behöver veta om keramiskt
  • 16:14 Vem anlitar man egentligen när tak
  • 16:14 Vem anlitar man egentligen när tak
  • 16:13 Vem anlitar man egentligen när tak
  • 11:52 Noen erfaring med uttak hos Mostbe
  • 11:51 Noen erfaring med uttak hos Mostbe

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 635
27 958
271 741
577
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies