Example #1
0
        public ExpenseLoggerFormBase()
        {
            // ExpenseLoggerQueries using for getting data.
            this.appQueries = new ExpenseLoggerQueries();

            // ExpenseLoggerCommands: using for creating, updating and deleting data.
            this.appCommands = new ExpenseLoggerCommands();

            // Build-in error provider which will be used for data validation.
            errorProvider = new ErrorProvider();

            // This event is fired when form is loaded.
            this.Load += ExpenseLoggerFormBase_Load;
        }
Example #2
0
        /// <summary>
        /// This method aims to load and get some services available in ExpenseLoggerAppForm
        /// So the child forms can use the same services with its parents forms.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void BaseUserControl_Load(object sender, EventArgs e)
        {
            // Access to parent form and store it to a variable which will be shared cross derived class
            ExpenseLoggerAppForm parentForm = this.Parent?.Parent as ExpenseLoggerAppForm;

            if (parentForm != null)
            {
                appQueries  = parentForm.appQueries;
                appCommands = parentForm.appCommands;
            }
            else
            {
                appQueries  = new ExpenseLoggerQueries();
                appCommands = new ExpenseLoggerCommands();
            }

            this.LoadFormData();
        }