Home | Applications | Documentation | Transport | Personal |

Documentation

Home | Cloud | C# | Database | DevOps | Revision | Web |

C# | API | Delegates | Dll | Garbage | Events | Interfaces | Lambdas | MVC | NoSql | Objects | Tasks | Worker |

C# Code

NumberDisplay




using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace NumberDisplay
{
    public partial class Form1 : Form
    {

        int numberSubScreenLaunched = 0;
        NumberPad subScreen;

        public Form1()
        {
            InitializeComponent();
        }

        private void btnExit_Click(object sender, EventArgs e)
        {
            for (int i = 0; i < numberSubScreenLaunched; i++)
            {
                subScreen.ClickNumberEvent -= M_ClickNumberEvent;
            }
            Application.Exit();
        }

        private void btnLaunchNumberPad_Click(object sender, EventArgs e)
        {
            subScreen = new NumberPad();
            // Subscribe to the event
            subScreen.ClickNumberEvent += M_ClickNumberEvent;
            subScreen.Show();
            numberSubScreenLaunched += 1;
        }

        private void M_ClickNumberEvent(object sender, string e)
        {
            txtNumber.Text += e.ToString();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
           
        }
    }
}

        



using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace NumberDisplay
{
    public partial class NumberPad : Form
    {

        // Declare the event
        public event EventHandler ClickNumberEvent;
                
        public NumberPad()
        {
            InitializeComponent();
        }

        private void btnExit_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        // Publish the event
        private void lblZero_Click(object sender, EventArgs e)
        {
            ClickNumberEvent?.Invoke(this, "0");
        }

        private void lblOne_Click(object sender, EventArgs e)
        {
            ClickNumberEvent?.Invoke(this, "1");
        }

        private void lblTwo_Click(object sender, EventArgs e)
        {
            ClickNumberEvent?.Invoke(this, "2");
        }

        private void lblThree_Click(object sender, EventArgs e)
        {
            ClickNumberEvent?.Invoke(this, "3");
        }

        private void lblFour_Click(object sender, EventArgs e)
        {
            ClickNumberEvent?.Invoke(this, "4");
        }

        private void lblFive_Click(object sender, EventArgs e)
        {
            ClickNumberEvent?.Invoke(this, "5");
        }

        private void lblSix_Click(object sender, EventArgs e)
        {
            ClickNumberEvent?.Invoke(this, "6");
        }

        private void lblSeven_Click(object sender, EventArgs e)
        {
            ClickNumberEvent?.Invoke(this, "7");
        }

        private void lblEight_Click(object sender, EventArgs e)
        {
            ClickNumberEvent?.Invoke(this, "8");
        }

        private void lblNine_Click(object sender, EventArgs e)
        {
            ClickNumberEvent?.Invoke(this, "9");
        }
    }
}