F
Frnak McKenney
Part of my current project involves laying out an event calendar.
At the customer's request, this takes the form of a scrolling panel
with three columns: a month and day, and two descriptive columns
which I've implemented as a Label and two LinkLabels.
Since other parts of the application can alter these events, I
rebuild it each time it is displayed. I'm now up to about forty
rows of text and the time to Clear() it and (re-)create it is
noticeable on an AMD 2600. The list is likely to grow, although
probably not more than doubling in size.
I tried bracketing the panel rebuild with SuspendLayout() and
ResumeLayout(false), but it still takes approaching a second to
switch between another Form and this one.
Is there some noticeably faster way to lay out the (40-odd)*3
controls on the panel and have it drawn? Would I be better off (he
says, the idea just occurring to him now at 2330) re-using the
controls with different Text values rather than using Clear() and
recreating them?
Any suggestions will be welcomed at this point (well, perhaps
any suggestion _other_ than "Recode the entire application in
MACRO-less Assembler". Or COBOL).
I don't suppose there's some wonderful 'web site out there in
'Net-land just chock full of suggestions for improving the
performance of VS.NET2003 applications? <grin>
Ah, well. Thanks for listening...
Frank McKenney, McKenney Associates
Richmond, Virginia / (804) 320-4887
Munged E-mail: frank uscore mckenney ayut minds pring dawt cahm (y'all)
--
"It is not enough that the rights of man be written in the books
of philosophers and inscribed in the hearts of virtuous men; the
weak and ignorant must be able to read them in the example of a
great nation. America has given us that example."
-- Condorcet, French Philosopher and Politician
--
At the customer's request, this takes the form of a scrolling panel
with three columns: a month and day, and two descriptive columns
which I've implemented as a Label and two LinkLabels.
Since other parts of the application can alter these events, I
rebuild it each time it is displayed. I'm now up to about forty
rows of text and the time to Clear() it and (re-)create it is
noticeable on an AMD 2600. The list is likely to grow, although
probably not more than doubling in size.
I tried bracketing the panel rebuild with SuspendLayout() and
ResumeLayout(false), but it still takes approaching a second to
switch between another Form and this one.
Is there some noticeably faster way to lay out the (40-odd)*3
controls on the panel and have it drawn? Would I be better off (he
says, the idea just occurring to him now at 2330) re-using the
controls with different Text values rather than using Clear() and
recreating them?
Any suggestions will be welcomed at this point (well, perhaps
any suggestion _other_ than "Recode the entire application in
MACRO-less Assembler". Or COBOL).
I don't suppose there's some wonderful 'web site out there in
'Net-land just chock full of suggestions for improving the
performance of VS.NET2003 applications? <grin>
Ah, well. Thanks for listening...
Frank McKenney, McKenney Associates
Richmond, Virginia / (804) 320-4887
Munged E-mail: frank uscore mckenney ayut minds pring dawt cahm (y'all)
--
"It is not enough that the rights of man be written in the books
of philosophers and inscribed in the hearts of virtuous men; the
weak and ignorant must be able to read them in the example of a
great nation. America has given us that example."
-- Condorcet, French Philosopher and Politician
--