Tony,
I had tried to put the dims in the main program and it seemed to give me the same error. I figured it was a scoping issue, but moving the item to program.cs file did not help. So then I figured I was wrong about it being a scoping problem.
I have a book on C#. I have read it. It went through scoping, but it does not get into specifics about where exactly stuff needs to be placed. VB6 used to take care of a lot of that stuff automatically.
I also searched the web before I posted.
In VB6 this was simple. You just called the form.left value and added the form.width value. Make the .TOP value the same and you were done.
I think you're getting ahead of yourself by taking on a project that
requires a bit more familiarity with the tools than you have.
This usually happens when a newbie goes looking for code to solve a
problem, finds something and tries to use it, without understanding it
or understanding how it works.
The problem you had in your AlignForms() should be obvious.
You are using undefined variables (the two form variables).
To access the singleton forms, you have to do the same thing
you did in the other methods (call the Instance() method).
private void AlignForms()
{
FrmInformation.Instance().Left = this.left;
FrmInformation.Instance().Top = this.top;
}
The problem is that the cause of the error should be completely
obvious and you shouldn't have gotten stuck on that if you had
a reasonable understanding of the language.
Again, my advice is to put down the attempt to write real software
and spend time learning the basics first. While folks here are glad
to lend a helping hand along the way, they're not going to tutor
you on C#, and that's basically what this thread is becoming.