Hi CallMeLann

Thank for your help I'll try this

Best
Salim

On May 15, 11:23 am, CallMeLaNN <[email protected]> wrote:
> Because you use:
>
> Login log = new Login();
>
> In MainForm but you declare:
>
> public Login(MainForm APrent):this()
>
> Which LoginForm need APrent value that is MainForm.
> To solve change to this:
>
> Login log = new Login(this);
>
> But, I recommend u to use MdiParent instead.
>
> 1. Remove the "private static new MainForm ParentForm = null;" no need
> to use this.
> 2. login constructor: let it default constructor (no parameter):
> "public Login()"
> 3. To disable the menu use like this: (Im not sure your main form type
> is Main or MainForm based on your code, I assume Main)
>
> Main ParentForm = (Main) this.MdiParent
> ParentForm.menuStrip1.Enabled = False
>
> dont use ! for toggle it, it can be wrong toggle, instead, assign true
> or false if you sure.
>
> On May 14, 4:01 pm, sahm <[email protected]> wrote:
>
> > Hi Benj Nunez
>
> > Good Day
>
> > I try to do that but some error show up
> > and this is my code
>
> > the child form
> > ////////////////////////////////////////////////////
>
> > using System;
> > using System.Collections.Generic;
> > using System.ComponentModel;
> > using System.Data;
> > using System.Drawing;
> > using System.Linq;
> > using System.Text;
> > using System.Windows.Forms;
>
> > namespace Archive_System
> > {
> >     public partial class Login : Form
> >     {
> >         public Login()
> >         {
> >             InitializeComponent();
> >         }
> >         private static new MainForm ParentForm = null;
>
> >         public Login(MainForm APrent):this()
> >         {
> >             ParentForm = APrent;
> >         }
>
> >         private void OKbutton_Click(object sender, EventArgs e)
> >         {
> >             string un = userNametextBox.Text;
> >             string ps = PasswardMaskedTextBox.Text;
>
> >             if (un == "sahm" || ps == "java")
> >             {
> >                 MessageBox.Show(this, "Login Work", "",
> > MessageBoxButtons.OK, MessageBoxIcon.Information);
> >                 ParentForm.menuStrip1.Enabled = !
> > ParentForm.menuStrip1.Enabled;
>
> >             }
> >             else
> >             {
> >                 MessageBox.Show(this, "Login not work", "",
> > MessageBoxButtons.OK, MessageBoxIcon.Information);
> >             }
>
> >         }
>
> >         private void CancelButton_Click(object sender, EventArgs e)
> >         {
> >             this.Close();
> >         }
>
> >     }
>
> > }
>
> > \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
> > the main form
> > //////////////////////////////////////////////////
>
> > using System;
> > using System.Collections.Generic;
> > using System.ComponentModel;
> > using System.Data;
> > using System.Drawing;
> > using System.Linq;
> > using System.Text;
> > using System.Windows.Forms;
> > using System.Management;
>
> > namespace Archive_System
> > {
> >     public partial class Main : Form
> >     {
> >         public Main()
> >         {
> >             try
> >             {
> >                 InitializeComponent();
> >                 this.WindowState = FormWindowState.Maximized;
> >                 this.FormBorderStyle = FormBorderStyle.FixedSingle;
> >                 this.Closing += new CancelEventHandler(Form_Closing);
>
> >                 this.menuStrip1.Enabled = false;
> >                 //this.Enabled = false;
> >                 checkUser();
> >             }
> >             catch (Exception exp)
> >             {
> >                 string ms = exp.Message;
> >                 MessageBox.Show(this, ms, "System Error",
> > MessageBoxButtons.OK, MessageBoxIcon.Error);
>
> >             }
> >         }
>
> >         System.Data.SqlClient.SqlConnection con;
>
> >         private void userToolStripMenuItem_Click(object sender,
> > EventArgs e)
> >         {
> >             try
> >             {
> >                 createUser cu = new createUser();
> >                 cu.MdiParent = this;
> >                 cu.Show();
>
> >             }
> >             catch (Exception exp)
> >             {
> >                 string ms = exp.Message;
> >                 MessageBox.Show(this, ms, "System Error",
> > MessageBoxButtons.OK, MessageBoxIcon.Error);
> >             }
> >         }
>
> >         private void aboutToolStripMenuItem_Click(object sender,
> > EventArgs e)
> >         {
> >             About ab = new About();
> >             ab.MdiParent = this;
> >             ab.Show();
> >         }
> >         /*public void setPreviousForm(frmMain mainFrm)
> >         {
> >             prevForm = mainForm;
> >         }*/
> >         public void checkUser()
> >         {
> >             Login log = new Login();
> >             //log.setPreviousForm(this);
> >             log.ShowDialog(this);
>
> >         }
>
> >         private void Main_Load(object sender, EventArgs e)
> >         {
> >             con = new System.Data.SqlClient.SqlConnection();
> >             con.ConnectionString = "Data Source=mr-x\
> > \SQLExpress2008;Initial Catalog=archive;Integrated Security=True";
> >             con.Open();
>
> >         }
>
> >         public void Form_Closing(object sender, CancelEventArgs cArgs)
> >         {
> >             con.Close();
>
> >         }
>
> >         private void menuStrip1_ItemClicked(object sender,
> > ToolStripItemClickedEventArgs e)
> >         {
>
> >         }
>
> >     }
>
> > }
>
> > \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
>
> > and this is the error message
>
> > ///////////////////////////////////////////
> > Error   1       The type or namespace name 'MainForm' could not be found 
> > (are
> > you missing a using directive or an assembly reference?)        
> > E:\Projects\C#
> > \Archive System\Archive System\Login.cs 18      28      Archive System
>
> > Error   2       The type or namespace name 'MainForm' could not be found 
> > (are
> > you missing a using directive or an assembly reference?)        
> > E:\Projects\C#
> > \Archive System\Archive System\Login.cs 20      22      Archive System
>
> > \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
>
> > thank you for your help
> > Bes
> > Salim
> > On May 14, 3:55 am, Benj Nunez <[email protected]> wrote:
>
> > > You're welcome. :-)
>
> > > On May 13, 5:03 pm, sahm <[email protected]> wrote:
>
> > > > Hi Benj Nunez
>
> > > > thank you for your help
>
> > > > Salim
>
> > > > On May 5, 1:02 pm, Benj Nunez <[email protected]> wrote:
>
> > > > > Here's how:
>
> > > > > To begin with, let's assume you already have Form1 which has the
> > > > > menustrip. Make sure
> > > > > the modifier of your menustrip is set to public. We will construct
> > > > > Form2 (the childform):
>
> > > > > 1) Create a Newform(the childform)
> > > > > 2) declare a Form1 variable in your childformlike:
>
> > > > >     private static new Form1 ParentForm = null;
>
> > > > > 3) define a second constructor, with Form1 as a parameter, like:
>
> > > > >         public Form2(Form1 AParent): this()
> > > > >         {
> > > > >             ParentForm = AParent;
> > > > >         }
>
> > > > > 4) drag a button in your childform.
> > > > > 5) double click your button and type this:
>
> > > > >         private void btnEnable_Click(object sender, EventArgs e)
> > > > >         {
> > > > >             ParentForm.menuStrip1.Enabled = !
> > > > > ParentForm.menuStrip1.Enabled;
> > > > >         }
>
> > > > > Now go back to your Form1 class to instantiate Form2. In this example,
> > > > > put
> > > > > a button in Form1. Double-click the button in Form1 and add this code:
>
> > > > >             Form2 form2 = new Form2(this);
> > > > >             form2.ShowDialog();
>
> > > > > Pass "this" to Form2. "this" refers to the Form1 instance. It allows
> > > > > you
> > > > > to access any controls in Form2. Provided that the controls in Form1
> > > > > have
> > > > > their modifiers set to public.
>
> > > > > Hope this helps.
>
> > > > > Benj
>
> > > > > On May 3, 9:31 pm, sahm <[email protected]> wrote:
>
> > > > > > Hi every one
> > > > > > How to can IenableordisableMenuStripin ParentFormfrom chiliad
> > > > > >form
> > > > > > Best
> > > > > > Salim

Reply via email to