» »

c# - realtime štetje znakov, besed ...

c# - realtime štetje znakov, besed ...

brojgar ::

Problem / C# .net20:

Imam richTextBox kontrolo, na katero želim obesit realtime števec znakov/besed/odstavkov.

Znake štejem z regularnimi izrazi v stilu:

string pattern = @"(w+?)";
return Regex.Matches(this.inputString_, pattern, RegexOptions.Compiled).Count;

Če je besedila v richTextBoxu veliko (od 50.000 znakov naprej) postanejo zadeve zelo počasne.

Zadevo sem rešil tako, da sem naredil novo instanco BackgroundWorkerja, ki štetje pospravi v svoj thread. S timerjem ga kličem recimo vsako sekundo, da lepo v ozadju šteje znake. Z RunWorkerCompleted potem izpišem novo stanje na zaslon.

Problem pa je, da pri pisanju v kontrolo z veliko besedila še vedno prihaja do delayjev. Ne sicer velikih, pa vseeno motečih. Jaz pa hočem, da hitrost osveževanja pri pisanju čisto nič ne trpi!

Zanima me, kakšen bi sploh bil pravi način reševanja tega problema. Je background worker sploh prava rešitev?
i.


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

[c#] da se program ne "obesi"

Oddelek: Programiranje
142048 (1468) win64
»

VB.streamwriter

Oddelek: Programiranje
121048 (881) P=LN
»

[VB] Komunikacija s serijskimi napravami

Oddelek: Programiranje
412332 (1606) mNeRo
»

[VB] Open

Oddelek: Programiranje
71549 (1388) Monster
»

VB

Oddelek: Programiranje
61340 (1236) strel

Več podobnih tem