memory leak in program for windows ce

I have a program that reads in an xml file containing the information for forms (ex. buttons, labels, textboxes). this works all good. But there are about 200 forms that have different controls on them. When you load the first couple of forms the program runs fine and is pretty quick. After about 20 or so forms it starts to slow down. eventually it becomes so slow that it seems to hang up.

all of the controls on the forms are created dynamically and when i clear the form i loop through all of the controls and dispose of them.
I took all of the code out that saves data from these forms. so all i have in there now is the code that loads the controls on to the single form and disposes of the controls.

the problem still exists. anybody have any ideas....please...help.....
rknealAsked:
Who is Participating?

[Webinar] Streamline your web hosting managementRegister Today

x
 
Mikal613Commented:
what language did you write the app in?
0
 
rknealAuthor Commented:
c#
0
 
Didier VallyConnect With a Mentor Systems Engineer and Finance AnalystCommented:
You have to :
- Dynamically create a form when you need to show it
- Dynamically destroy the form when you need to hide it
- Save the data needed for creating the forms in a central class (MVC model)
- Save the data that needs to be shown on forms in this central class
- Access db from this central class
- Generally, all what you programatically do must be done from a main central class...

Example :

1/

Central class named "centralclass.cs" :

public class centralclass(){

public FrmMainForm frmMainForm = null;
public FrmForm2 frmForm2 = null;
public FrmForm3 frmForm3 = null;
(...)

public void centralclass()
{}

}


2/ When you want to show FrmForm2 from FrmMainForm,

You modify the constructor for FrmForm2, making it accept a variable of type "centralclass" :

public class FrmForm2 {

centralclass ccl;

public void FrmForm2(centralclass cclP)
{
this.centralclass = cclP;
}

}


3/ Showing FrmForm2 from FrmMainForm :

if(this.centralclass.frmForm2 == null){
this.centralclass.frmForm2 = new FrmForm2(this.centralclass);
this.env.centralclass.frmForm2.Show();
}
else
{
this.centralclass.frmForm2.Show();
}

}



I hope that helps. This is the only way I see for doing what you want to do.

0
All Courses

From novice to tech pro — start learning today.