C# DateTimePicker Control

Hi Guys! We always aspire to make yourself equipped with useful information so you can excel and grow in your relevant field. Today, I am going to uncover the details on C# DateTimePicker Control. It allows you to select date and time and show it in specific format. It is extremely useful when you develop any application where you want date of birth of user in a specified format or where you want to display date and time explicitly. I'll try to discuss each and every feature of C# DateTimePicker Control, so you don't have to go anywhere else for finding the information regarding this specific control. Let's get started.

C# DateTimePicker Control

  • C# DateTimePicker Control allows you to select date and time and show in specified format.
  • It is very useful in developing the applications where you want user data in the form of date of birth.
  • It behaves like  an interface where user can change the date and time information.
  • The display of this control contains fields that are defined by the format string of the control.
  • Creating a DateTimePicker control is very easy. Open your windows form application and drag and drop the DateTimePicker control from Toolbar that is appeared on the left side to your Form1.
  • Or simply double click the DateTimePicker control, it will automatically be placed on your Form1 displayed on the screen.
  • You can play with it and change its location in the given space of Form1 or resize it with the help of mouse.
  • When you run the application, monthly calendar will be displayed on the screen, where you can see date, month year and day.
  • You can select any date of your own choice. It will appear like the figure below.
  • You can also change the format of the DateTimePicker control in the code. As you double click the Form1, following figure will appear.
  • Simply put the following code under the Form1_Load function if you want to appear the date in this format i.e year/month/date.
  private void Form1_Load(object sender, EventArgs e)
        {
            dateTimePicker1.Format = DateTimePickerFormat.Custom;
            dateTimePicker1.CustomFormat = "yyyy/MM/dd";
        }
Similarly, if you want the date to be appeared in this format i.e date/month/year. You can use the following code.
            dateTimePicker1.Format = DateTimePickerFormat.Custom;
            dateTimePicker1.CustomFormat = "dd/MM/yyyy";
  • You can make your own custom time format by doing minor changing in code.
  • Similarly, if you want the format where you want to show both date and time, you can use the following code.
            dateTimePicker1.Format = DateTimePickerFormat.Custom;
            dateTimePicker1.CustomFormat = "yyyy/MM/dd hh:mm:ss";
DateTimePicker Properties
  • Setting the properties of DateTimePicker control is very easy. In order to open the properties of the DateTimePicker control just right click on the DateTimePicker control and select properties.
  • Properties window will appear on the right side of the screen and it will appear like the figure below.
Name
  • Name property defines the specific name of the DateTimePicker control which is user to access the control in the main code.
  • In the figure above name of the DateTimePicker control is set as dateTimePicker1.
Location and Size Properties
  • Location property defines the location of the DateTimePicker control with respect to x axis and y axis on the Form1.
  • You can set values of your own choice by simply putting the values in the Location property box or you can move around the DateTimePicker control on the Form with the help of mouse.
  • Size property defines the size of the DateTimePicker control. You can simply put the values of your own choice in the size property box or you can increase the size with the mouse by simply putting the cursor of the mouse of the right border of the control and expanding it towards right side or lower side.
Font and Format Properties
  • Font property defines the text style of the DateTimePicker control.
  • Go to the properties window and select the Font property.
  • It will show font size with different font style. You can choose any style of your own choice.
  • Similarly you can change the format of the DateTimePicker control. This control comes with four format including long, short, time and custom.
ShowChekBox and ShowUpDown Properties
  • ShowCheckBox property allows the the control to be editable without using the calendar.
  • This can be achieved by setting the ShowCheckBox as true.
  • ShowUpDown property in the property window allows you to change the date and time by showing up and down value where you can increase and decrease the value of date and time.
  • Set the ShowUpDown as true and modify the date and time of your own choice.
  • When you set both ShowCheckBox and ShowUpDown as true and run the application, following figure will appear.
Value
  • Value property of DateTimePicker control is widely used in C#.
  • It stores the current value of date and current in the control.
Example 1
Now we build a code where it will show the date and time in the specific format and when button is clicked, then code will show the current date and time stored in the DateTimePicker control. Check following code to understand this process.
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 WindowsFormsApplication10
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

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

        private void dateTimePicker1_ValueChanged(object sender, EventArgs e)
        {
            dateTimePicker1.Format = DateTimePickerFormat.Custom;
            dateTimePicker1.CustomFormat = "yyyy/MM/dd hh:mm:ss";
        }
        private void button1_Click(object sender, EventArgs e)
        {
            DateTime iDate;
            iDate = dateTimePicker1.Value;
            MessageBox.Show("Current date is " + iDate);
        }
     
    }
}
  • When you run the application, and click the button, output will show in the following form.
How to Show Null Value in DateTimePicker Control
  • It is important to note that we can not use null value in DateTimePicker control by default because it is a value type like int, bool, and float and it returns some value.
  • You can make DateTimePicker control empty or it will show null value.
  • First drag and drop one DateTimePicker control on the Form. Then right click on the DateTimePicker control and go to properties. Properties will appear on the right side of the screen.
  • In the property window find the property "Format" and set it as Custom. Then find the property "CustomFormat" and simply add a space in the box. After you run the application it will show the empty box of DateTimePicker control.
  • Or you can show DateTimePicker control empty by the following code.
 private void dateTimePicker1_ValueChanged(object sender, EventArgs e)
        {
            dateTimePicker1.Format = DateTimePickerFormat.Custom;

            if (dateTimePicker1.Checked == false)
            {
                dateTimePicker1.CustomFormat = " ";
            }
            else
            {
                dateTimePicker1.CustomFormat = "yyyy/MM/dd hh:mm:ss";
            }
  • Before applying this code first we set ShowCheckBox as true in the property window of the DateTimePicker control. Then we apply this code.
  • We are playing a trick here, we first set the format of the DateTimePicker as custom, then set the format text of the DateTimePicker as black space.
  • This will do the trick and will set the DateTimePicker as blank when the box will be unchecked otherwise it will return some value.
  • When you run this code output will appear like the figure below when ShowCheckBox is unchecked.
That's all for today. I have tried my best to give you valuable information in simple steps so you can get an easy grip on C# sharp language. However, if still you feel skeptical or have any doubt you can ask me in the comment section below. I'll go extra mile to help you solve your questions and queries as soon as possible. Stay Tuned!

C# CheckBox Control

Hi Guys! I hope you are doing great and having fun with your lives. Today, I am going to unlock the details on the C# CheckBox Control. A CheckBox control is used to select the single or multiple options from the given list of options. I'll give you a brief detail how you can create CheckBox in the Windows form application. Also, I will discuss the properties and methods used in CheckBox control. You can also have a look at C# Button Control. which we discussed in previous article. Let's hop on the board and dive in the details of CheckBox control.

C# CheckBox Control

  • C# CheckBox Control is used to select the single or multiple options from the given list of options.
  • In order to create CheckBox in design time, drag the CheckBox from the ToolBox located at the left side and drop it to the form1 main screen.
  • As you create the CheckBox, it will look like the figure below.
  • You can also create CheckBox in design time by simply double clicking on the CheckBox control.
  • As you double click on the CheckBox control, it will create a CheckBox on the form1.
CheckBox Properties
  • As you drag and drop the CheckBox on Form1, next step is to check the properties of the CheckBox.
  • You can check the properties of the CheckBox by right clicking on the CheckBox then go to properties option.
  • Properties Window will look like below figure.
Location and Size Properties
  • Location property defines the starting point of check box with respect to x axis and y axis on the form1.
  • You can simply click on the CheckBox and change the location of the box.
  • Similarly, size property defines the size of the CheckBox control.
BackColor, BackgroundImage, ForeColor Properties
  • BackColor is used to define the background color of the CheckBox.
  • You can simply go to BackColor property in the property menu of the CheckBox and choose the color of your own choice.
  • BackgroundImage is used to select the background image of the CheckBox.
  • Go to the BackgroundImage property and choose the image of your own choice.
  • ForeColor defines the foreground color of the checkbox.
  • In the first figure forecolor of the checkBox1 is black.
  • You can go to the ForeColor property of the properties list and choose the color of your own choice.
Name, Font, Appearance Properties
  • Name defines the unique name of the CheckBox control which is used to access the CheckBox control in the main code.
  • In the first figure, name of the CheckBox is checkBox1.
  • Font property is used to select the font of the text the appears on the CheckBox control. As you click on the Font property, you can choose the desired font from the available list of font styles.
  • From appearance property, you can select between two appearance options i.e. normal or button. Normal checkbox will look like as shown in the first figure. While button option will appear like the figure below.
Text, TextAlign and CheckAlign Properties
  • Text property of the CheckBox is used to change the text that appears on the CheckBox.
  • In the first figure, text that appears on the CheckBox is checkBox1.
  • The TextAlign property defines the text alignment of the text that can be from TopLeft to BottomRight.
  • CheckAlign property represents the alignment of the check mark in the CheckBox control.
  • In the first figure the alignment of the check mark is MiddleLeft.
CheckState and Checked Properties
  • CheckState define the state of the checkbox which can be checked, unchecked and intermediate.
  • CheckBox control will be checked if check mark on the CheckBox control is checked and it will be unchecked if the check mark of the CheckBox control is unchecked.
  • CheckState is directly connected with the Checked property of the CheckBox control.
  • If CheckState is Checked or Intermediate then Checked property will be true and if CheckState is Unchecked then Checked property will be false.
Example 1
  • This example will clearly elaborate the use of check box.
  • Simply open the windows form application in C#.
  • Then drag and drop a button and four check boxes from the Toolbar to Form1.
  • Change the name of each check box by right clicking on each checkbox separately and then go to the properties of the checkbox and find "text" property. And change the name of the button to "Combine" by similar process.
  • In next step, change the Checked property of both L and T checkboxes and set it to true.
  • As you set the Checked property to true it will automatically change the CheckState and set it to as Checked.
  • Now double click on the combine button it will take you to the window like below.
  • In the figure above button1_Click function which will be get called when the button will be clicked in Windows form application.
  • Now copy and paste the code below in your button function.
 private void button1_Click(object sender, EventArgs e)
        {

            String last = "this is check box ";
            if (checkBox1.CheckState == CheckState.Checked)
            {
                last += "L";

            }
            if (checkBox2.CheckState == CheckState.Checked)
            {
                last += "A";

            }
            if (checkBox3.CheckState == CheckState.Checked)
            {
                last += "S";

            }
            if (checkBox4.CheckState == CheckState.Checked)
            {
                last += "T";

            }
            MessageBox.Show(last);
        }
  • There are four condition of this code.
  • If first condition will be true i.e. CheckState of the checkBox1 is checked and it will go to next step and call the word last with addition of "L" which is a string and is equal to "this is a check box".
  • So when first condition will be true, output of the code will be shown like below.
When all four CheckBoxes are checked then it will show an output like below. That's all for today. I hope you have got a clear idea about checkbox. However, if still you feel skeptical or have any doubt, you can ask me in the comment section below. I'll help you according to best of my expertise. Your suggestions and feedback will be highly appreciated. We always love when we are able to meet your needs and expectations. Stay tuned!

Introduction to C# Classes

Hi Everyone! Hope you all are doing great. We always love when you keep coming back for what we have to offer. Today, I am going to give you a Introduction to C# Classes. We have already seen Introduction to Data Types in C# which includes boolean, integer, char and double. However, if you want to make complex custom type, you can make use of classes. I'll give you a brief introduction to classes so you don't have to go anywhere to find information regarding classes in C#. Let's hop on the board and dive in the details of classes.

Introduction to C# Classes

  • Class in C# is referred as a blueprint of complex data type that describes the behavior and data of type.
  • If you want to create complex custom type, we use class. What do I mean by complex custom type?
  • Suppose you want to store a number 123, you can store it easily in an integer variable.
  • However, if you want to store the customer's information, you can use classes like what kind of information customer has, what is his first and last name, his email ID, phone number and age etc.
  • By using a built-in fields we can create a class.
  • Fields of class define the class data and methods define the behavior of the class.
  • When we create customer class, it not only contains the data, it can also do certain things like save the customer to the data base, print the customer full name etc.
  • So, class has state and behavior, state is nothing but data and behavior is nothing but what the class is capable of doing.
How to Create a Class
In order to create a class we use a class keyword followed by the name of the class and members of class are enclosed by curly brackets. Let's look at an example which will make things clear. Example 1 Following figure shows the complete explanation of classes.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

class Customer
{
    string _firstName;
    string _lastName;

    public Customer (string FirstName, string LastName)
{
        this._firstName = FirstName;
      this._lastName = LastName;
}
    public void PrintFullName()
    {
        Console.WriteLine("Full Name = {0}", this._firstName +" "+ this._lastName);
    }
    ~Customer()
    {
        //clean up code
    }
    
}
namespace ConsoleApplication2
{
    class Program
    {
        static void Main(string[] args)
        {
            Customer C1 = new Customer("Adnan", "Network");
            C1.PrintFullName();
        }
    }
}
  • In the above example first name and last name of the customer is stored in a string which represents the state of the class.
  • To initialize these fields a class can also have an constructor.
  • A constructor will have a same name as that of your class.
  • We make constructor public which is an access modifier.
  • Constructors are basically used to initialize the class fields.
  • Then we pass two parameters into this constructor which are string FirstName and string LastName.
  • Constructor doesn't return a value but it can take parameters.
  • Then we use constructor to initialize these class fields i.e _firstname and _lastname.
  • This field _firstname is equal to the parameter FirstName and the field _lastname is equal to the parameter LastName.
  • Then we put "this" keyword before firstName and lastName which is used to define the instance of classes also referred as objects.
  • So, basically we are using constructor to initialize the class fields with parameters that are passing into the constructor.
  • In the next step we add a behavior which allows the class to do something.
  • We want to print the full name of the customer. This is called the method of the class which tells the behavior of the class.
  • So far, we have created constructor, two fields and a methods for the class.
  • In the next step we call the destructor of the class.
  • Destructor will have the same name as that of the class but it doesn't take parameters and doesn't have a return type.
  • Usually in C# we don't require destructors.
  • We use destructors to clean up the resources your class was holding on to during its life time.
  • We don't need to call the destructors, they are automatically called by the garbage collector.
  • In the next step we make use of class in our main method.
  • In this step we create instance C1 of class Customer with using the keyword "new".
  • This instance is also called the object of the class. Instances and Objects are used interchangeably.
  • Then we call FirstName and LastName of the customer. When we put FirstName as Adnan, it will pass through the parameter (string FirstName) of the constructor. And put second name as Network that will pass through the parameter(string LastName) of the constructor.
  • Constructors are called automatically when you create instance of class.
  • Also, constructors are not mandatory to use, if you don't provide a constructor, .NET framework will automatically provide a default parameter less constructor.
  • In the next step we print the full name of the customer.
Output Output of the above program will be like below. That's all for today. I hope you have got a clear idea about class, constructor and destructor used in C#. However, if still you feel any doubt or have any question you can ask me in the question below. I'll be happy to help you in this regard according to best of my expertise. Stay tuned!

Introduction to Data types in C#

Hey Guys! I hope you all are doing great. Today, I am going to give a detailed Introduction to Data types in C#. It's our 3rd tutorial in C# series & it's a theoretical tutorial so you just need to read it once. I'll try to cover every aspect related to Data types in C# so you get a clear picture of what are data types and why we need them? So, let's get started with Introduction to Data types in C#:

Introduction to Data types in C#

  • Data Types in C# are used to inform the compiler about the type, size & nature of data that can be stored in a variable.
  • Whenever we need to declare a variable, we need to inform the compiler about the data size & type of the variable.
  • There are 3 types of data types available in C# programming, which are:
      1. Value Data Type
      2. Pointer Data Type
      3. Reference Data Type
  • Here's a Flow Diagram of C# Data types for better understanding.
  • Let's discuss these C# data types one by one in detail:
1. Value Data Types
  • Value Data Type Variable is the simplest variable in C#, to which we can assign a value directly and they save this value on the stack, so it's not cleared by Garbage Collector.
  • Each variable stores its data in a separate memory so we can't assign a single memory to multiple variables, although we can update their data quite easily.
  • Value data types are further divided into two types, named:
    • Predefined data types.
    • User defined data types.
A. Predefined Value Data Types: These Value Data Types are predefined in C# i.e. bool, int, float, decimal, char etc.
  • Bool: a short form of Boolean, contains two values i.e. true or false.
  • Int: a short form of integer.
  • Char: a short form of character, which is used to store alphabets.
  • Float: is used to store a floating point number i.e. number with decimal values.
  • Here's a table showing Memory Size & Range of these Data Types in C#:
  B. User Defined Value Data Types: User can also create customized data types in C# using existing data types. i.e. structure or enumerations etc.
  • Enumerations This value data type contains set of related named constants which are called as enumerator list. The "enum" is used to declare the word enumerations.
  • Structure or struct is referred as a grouped list of variables that can be placed under one name in memory. It is same like a "Class" in the reference type.
Don't worry about these concepts, we will cover them on by one in our coming lectures.
2. Pointer Data Type
  • The pointer, also called as indicator or locator, is a data type in C# that points towards the memory address of a data, we need to use ( * ) in its declaration.
  • The pointer in C# can only hold the memory address of arrays and value types i.e. int, char, float etc.
  • No conversion is allowed between pointer types and objects.
  • However, conversion between two different pointer types is allowed, you can also convert between pointers and integral types.
  • You can also point multiple pointers in same data type.
3. Reference Data Types
  • Reference data types in C# don't consist of actual data, instead they point towards the reference to the data stored in a variable, it saves data in the heap.
  • In reference data types, it's possible for two variable to reference to the same object.
  • Reference Data Types are further divided into two types:
A. Predefined Reference Data Types: contain objects, strings etc.
  • String is a sequence of finite characters which can contain spaces and number. Total number of characters in the string refers to the string length. i.e. "I need 20 dollars" is a string.
  • Object is referred as a block of memory that executes according to the blueprint.
B. User Defined Reference Data Types: contain classes, interface, etc.

Nullable Data Types

  • In C# data types, the most commonly used data types are Value Types & Reference Types. Pointer types are not used that much.
  • In above discussion, we have seen that:
    • Value Data Types: int, float, double, structs, enums etc.
    • Reference Data Types: string, interface, class, delegates etc.
  • By default, Reference data types are nullable datatypes i.e. we can assign null value to these datatypes.
  • Let's say, if I want to initialize a string with null value, I need to use this code: string[ ] data = null;
  • On the contrary, Value Data Types are non nullable by default in C# i.e. we can't initialize an integer with null value.
  • But we can make a value data type nullable by using a ( ? ) sign in front of the datatype.
  • int? i = null; It will work fine and won't create any error because now i has created a nullable integer.
Why we need nullable ?
  • Let's say you are designing a sign up form and you want user to select the gender i.e. male or female.
  • We can store this value in Boolean variable but what happens if the user doesn't select any value.
  • That's where nullable comes in handy and in this third case where user hasn't selected any value, we can assign a null value to our Boolean variable.
That's all for today. I hope you have got a clear idea about data types in C# language. However, if still you feel skeptical or have any question, you can ask me in the comment section below. I'll try to resolve your query according to best of my expertise. Keep your feedback and suggestions coming, it will help us to augment the quality of our article and give you flawless work that resonates with your needs and expectations. Stay tuned!

C# PictureBox Control

Hey everyone hopes you are good. In this tutorial, I'm going to share an amazing GUI tool which is mostly used in Point of Sale application which is C# PictureBox Control. As the name reflects it's feature, it's the box which allows you to preview the images. In short, we can say that this the PictureBox which is used to show images on the application, such as the logo or social media icon etc. In my previous tutorials, I have explained C# ListBox ControlC# Button ControlC# Label Control and C# TextBox Control which are similar to C# PictureBox. You will get to know about each and everything of C# PictureBox including Events. You can simply drag and drop the C# PictureBox from the toolbox in design tab and adjust that according to your needs. You can use C# PictureBox for many purposes according to your requirement of application development. In point of sale application developer used C# PictureBox to preview the image of a scanned item in the POS. If you are looking to add images in your desktop application then you have to use the C# PictureBox.

C# PictureBox Control

It's simple image box which allows you to add images in your desktop application. You can simply add PictureBox by drag the PictureBox object from the toolbox of design tab. PictureBox can't be received the inputs because it's not the selectable control tool like C# ListBox ControlC# Button ControlC# Label Control and C# TextBox Control etc. You can only add the images and perform any specific action with there event handlers. Suppose that you are wanted to add the PictureBox in your application, then simply drag and drop. Then in the main code call by the object name which is by default pictureBox1. To show the image within PictureBox we have used the image property which will set the path of the image to be previewed in C# PictureBox. In the following code, you can be observed how we have set the path of the image for PictureBox.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEP
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            pictureBox1.Image = Image.FromFile("c:\\testImage.jpg");          
        }

    }
}
First, you have to declare the PictureBox image property then you have to define the path from the constructor of Image.FromFile as mention in above code. In the following image, you can preview that how we have set the TestImage inside PictureBox. By default name of C# PictureBox is pictureBox1, if you are wanted to change the default name then you have to go to properties and search for the name. In the name, you can override the name easily. In the following image, you can see that how we have changed the name of C# PictureBox instance. It will be helpful if you are working on the mega projects, to get remember which object is used for which specific purposes.

C# PictureBox Events

C# PictureBox Events will allow you to perform the specific task or functionality according to the requirements on specific actions done by the end-user. There are many Events which you can use with the PictureBox to make your desktop application more interactive. Here is the list of those events which we will discuss further in this tutorial.
  • C# PictureBox Click Events
  • C# PictureBox DoubleClick Events
  • C# PictureBox MouseEnter Events
  • C# PictureBox MouseHover Events
  • C# PictureBox MouseLeave Events
There are many other events handler which you can be used, we have selected these events because these are frequently used during the development of desktop applications.

C# PictureBox Click Events

Click event is used to handle the click of the user on the PictureBox. Supposed you are wanted to perform any specific functionality when user will click on the PictureBox then you have to use the Click Event handler of PictureBox. You just need to declare the functionality within the click event. Whenever the user will click the picture box, click event capture the click and get executed. In the following code, you can observe that we have used simple message box within the Click event handler. So that when user will click on the PictureBox it will show the message prompt.
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 TEPArticle
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void TEPpictureBox1_Click(object sender, EventArgs e)
        {
            MessageBox.Show("You Just Click On the TEP PictureBox");
        }
    }
}
You can declare any kind of functionality within the click event handler according to your desire, we just used the message box to minimize the code and save our time. The main purpose is to share the basic logic of click event handler. In the following image, you can observe that when we have to click the PictureBox it's prompt the message.

C# PictureBox DoubleClick Events

This event occurs when user will click twice on the PictureBox. Sometimes we have required performing any functionality when user will DoubleClick on the PictureBox. You just have to activate the DoubleClick event handler and declare the functionality which you want to perform. So that when user will click twice on the picture box that functionality get executed. In the following code, you can observe that how we have declared the message box in the double click event handler. When user will click twice on the picture box a prompt message appears.
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 TEPArticle
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void TEPpictureBox1_DoubleClick(object sender, EventArgs e)
        {
            MessageBox.Show("You Just DoubleClick On the TEP PictureBox");
        }
    }
}
We have declared the message box in DoubleClick event handler. You can declare any other functionality within double click event handler. In the following image, you can be observed that how message prompt when user will click twice on the C# PictureBox.

C# PictureBox MouseEnter Events

This event handler is used to perform any action when the mouse cursor enters the boundaries of C# PictureBox. Supposed you are required to perform any functionality when even user will enter the mouse cursor in the boundaries of PictureBox. For this case, we will use the MouseEnter Event handler. We will declare a message box within the MouseEnter Event handler. Whenever you will enter the mouse to the visible part of PictureBox it will prompt the message box. In the following code, you can observe the whole scenario.
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 TEPArticle
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void TEPpictureBox1_MouseEnter(object sender, EventArgs e)
        {
            MessageBox.Show("You Just Enter in visible part of TEP PictureBox");
        }
    }
}
We have declared the message box within the MouseEnter event handler. Now when user will enter the mouse cursor to visible part message prompt. In the following image, you can observe the output of the above code.

C# PictureBox MouseHover Events

This event handler will occur whenever user will hover the mouse cursor for a while on PictureBox. There is a very little difference between MouseEnter and MouseHover Event handler. Until user will hover the mouse cursor this event will not be executed. Supposed that you are required to change the image of picture box whenever user will hover the mouse. For this scenario, we have created the code which you can get from the following.
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 TEPArticle
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        private void TEPpictureBox1_MouseHover(object sender, EventArgs e)
        {
            TEPpictureBox1.Image = Image.FromFile("C: \\Users\\Public\\Pictures\\test.jpg");
        }
    }
}
In the above code, you can observe that we have used the test.jpg as the image when the MouseHover event will be executed. You can declare any kind of functionality as you are required. You can replace the path of the image and set MouseHover event to your C# PictureBox. When you will execute the code and hover the mouse cursor on the PictureBox it will change the image.

C# PictureBox MouseLeave Events

This event is executed whenever the mouse cursor leaves the boundaries of PictureBox or the visible area. If you are wanted to perform any action when user will leave the PictureBox then you can use the MouseLeave event handler with C# PictureBox. In the following code, we have used MouseHover Event handler too along with the MouseLeave Event handler. We have declared pic1 for MouseHover and pic2 for MouseLeave event. When user will hover the mouse PictureBox set to pic1 and when leaving the PictureBox it will set to pic2. You can get the code from the following.
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 TEPArticle
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

      

        private void TEPpictureBox1_MouseHover(object sender, EventArgs e)
        {
            TEPpictureBox1.Image = Image.FromFile("C: \\Users\\Public\\Pictures\\pic1.jpg");
        }

        private void TEPpictureBox1_MouseLeave(object sender, EventArgs e)
        {
            TEPpictureBox1.Image = Image.FromFile("C: \\Users\\Public\\Pictures\\pic2.jpg");

        }
    }
}
When you will execute above code, and hover the PictureBox the image get changed and when left the PictureBox image get change again. By this, you can create animated effects in your desktop application. Remember if you will copy the above code you have to add these event handlers to the C# PictureBox. We have tried to give you basic to advance information about C# PictureBox. In this tutorials, you have learned many different techniques which are used in the professional development of desktop application along with the usage of Event handlers. After this, you can go for C# ListBox ControlC# Button ControlC# Label Control and C# ComboBox Control. In all of this, don't forget to subscribe our YouTube Channel "TheEngineeringProjectsand C# Video Tutorial PlayList.

C# Checked ListBox Control

Hey, everyone, hope you are doing great. In today's article, we are going to explore C# Checked ListBox Control. In the previous article, we discussed in details about C# TextBox, C# Label, C# ListBox, C# ComboxBox and C# Button. C# Checked ListBox plays very important role in Point Of Sale applications. In some words, we can say this is a combination of check boxes and list. C# Checked ListBox is used to gain specific information from end-user. It's mostly used in survey-based application to gain the voting for a specific purpose. We will work with Checked ListBox same as we have worked with ListBox & ComboBox. You can use C# Checked ListBox for multiple purposes. You can use this as the attendance taker to mark the attendance of students.

C# Checked ListBox Control

The C# Checked ListBox is simple list box with the combination of checks. It provides you the list and checks to mark them as you select the items. The user can select the single and multiple checks. According to the need, you can set the checks enabled and disabled. You can create conditional statements on which C# Checked ListBox will become enabled and disabled. When professional programmers used Checked ListBox they will also use the Conditional Statements. They make sure that checked boxes will become enabled only when user will fill up or proceed the above instructions. A live example of checkbox usage is the terms & condition form of any organization. If you are getting started with YouTube they will be asked you to read their terms and checked in the last that you are agreed or not. If you will check the box only then you can process forward. Same is the case will C# Checked ListBox, developers make the conditional check for inputs gained from C# Checked ListBox. If you are wanted to add the Checked ListBox, then go to the toolbox in design tab. Drag the C# Checked ListBox on the form. Now the CheckListBox is added to the form. The default name of first drag Checked ListBox is as CheckedListBox1. You can change this name from the property tab on the right-hand side. Supposed you are wanted to add values in C# Checked ListBox, then you have to write items after the default name and select the add method. In the following code, you can be observed how we inserted the values inside C# Checked ListBox.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPNet
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();

        }

        private void button1_Click(object sender, EventArgs e)
        {
            checkedListBox1.Items.Add("TEP 1");
            checkedListBox1.Items.Add("TEP 2");
            checkedListBox1.Items.Add("TEP 3");
            checkedListBox1.Items.Add("TEP 4");
        }
    }
}
We have used the button. When user will click the button, C# Checked ListBox values appears. It depends on your logic that how you wanted to process the codes. I have used the button if you don't want to use the button you can simply copy the code after the InitializeComponent function. It will generate the following output when a button is clicked.

C# Checked ListBox Properties

If you are looking to change the default styles, color scheme, font size etc then there are many properties which you can use to modify the Checked ListBox. Default Checked ListBox is simple in appearance, you can make that attractive by customising the properties. In the following part of an article, we will discuss, how to change foreground color and background color of a checked list box. How to change the font size and make checked and uncheck marks on checked ListBox items. If you are wanted to make the Checked ListBox items marked check when executing the program, then you have to use the CheckState attribute. There are three values which you can use for CheckState attribute.
  • Checked
  • UnChecked
  • Indeterminate
In the following code, we have used all the above values for CheckState attribute. By default all the Checked ListBox items are UnChecked so you don't need to write the UnChecked values.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPNet
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();

        }

        private void button1_Click(object sender, EventArgs e)
        {
            checkedListBox1.Items.Add("TEP 1", CheckState.Checked);
            checkedListBox1.Items.Add("TEP 2", CheckState.Indeterminate);
            checkedListBox1.Items.Add("TEP 3", CheckState.Unchecked);
            checkedListBox1.Items.Add("TEP 4");
        }
    }
}
We don't use the CheckState for the 4th item because by default it's unchecked. If you will execute the code, you observed that Check will be marked, Indeterminate is Check but can't edit and uncheck is unmarked. If you can't understand then the below image will the exact output of the above code. If you are looking to change the background color then you have to use the backColor property. BackColor property is applicable on all tools which are available in ToolBox. In the following code, we are going to change the background color of Checked ListBox from white to AliceBlue. We will use the Color property to set the color. You can get the idea from the code.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPNet
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            checkedListBox1.BackColor = Color.AliceBlue;
            checkedListBox1.Items.Add("TEP 1");
            checkedListBox1.Items.Add("TEP 2");
            checkedListBox1.Items.Add("TEP 3");
            checkedListBox1.Items.Add("TEP 4");
        }

       
    }
}
If you are wanted to change the foreground color or color of the font, then you have to use the ForeColor property to set the colors. We will be used the Color property to set the value of color which is assigned to the foreColor. In the following code, we have used BlueViolet color and set it for the foreground or for the font.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPNet
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            checkedListBox1.ForeColor = Color.BlueViolet;
            checkedListBox1.Items.Add("TEP 1");
            checkedListBox1.Items.Add("TEP 2");
            checkedListBox1.Items.Add("TEP 3");
            checkedListBox1.Items.Add("TEP 4");
        }

       
    }
}
If you are wanted to change the font size, then you have to used to set the font property. We have to call the font constructor and passed two parameters. The first parameter is Font.FontFamily and the second parameter is the size of the font. In the following code, you can observe that how we changed the font size for Checked ListBox. The first parameter is the prototype and the second parameter is the font style property.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPNet
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            checkedListBox1.Font = new Font(Font.FontFamily, 12);
            checkedListBox1.Items.Add("TEP 1");
            checkedListBox1.Items.Add("TEP 2");
            checkedListBox1.Items.Add("TEP 3");
            checkedListBox1.Items.Add("TEP 4");
        }

       
    }
}
If you are wanted to change the text style into italic, then you have to use the FontStyle property. We have to use the font constructor and passed two parameters. The first parameter is the prototype and the second one is the FontStyle.Value which is set to Italic in the following code. We have passed the CheckedListBox1.Font as the prototype parameter.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPNet
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            checkedListBox1.Font = new Font(checkedListBox1.Font, FontStyle.Italic);
            checkedListBox1.Items.Add("TEP 1");
            checkedListBox1.Items.Add("TEP 2");
            checkedListBox1.Items.Add("TEP 3");
            checkedListBox1.Items.Add("TEP 4");
        } 
    }
}
If you are wanted to bold the text, then you have to use the font constructor and passed the Font style as the bold. In the following code, we have changed the text of checkedListBox items to bold.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPNet
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            checkedListBox1.Font = new Font(checkedListBox1.Font, FontStyle.Bold);
            checkedListBox1.Items.Add("TEP 1");
            checkedListBox1.Items.Add("TEP 2");
            checkedListBox1.Items.Add("TEP 3");
            checkedListBox1.Items.Add("TEP 4");
        }

       
    }
}
If you are wanted to change the font family style then you have to use the font constructor and passed the font family name and size as the parameter. The first parameter is the name of font family and the second parameter is the font size. In the following code, we have used the "Times New Roman" and the size as 20.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPNet
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            checkedListBox1.Font = new Font("Times New Roman",20);
            checkedListBox1.Items.Add("TEP 1");
            checkedListBox1.Items.Add("TEP 2");
            checkedListBox1.Items.Add("TEP 3");
            checkedListBox1.Items.Add("TEP 4");
        }

       
    }
}
If you are wanted to check that what the value you have selected, then you have to use the SelectedItem. In the following code, I have used the button and message box to show the selected item value. If you will execute the code, then you have to select the items first then click the button and it returns the selected item value in the message box.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPNet
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            checkedListBox1.Items.Add("TEP 1");
            checkedListBox1.Items.Add("TEP 2");
            checkedListBox1.Items.Add("TEP 3");
            checkedListBox1.Items.Add("TEP 4");
        }

        private void button1_Click(object sender, EventArgs e)
        {
            MessageBox.Show(checkedListBox1.SelectedItem.ToString());
        }

       
    }
}
If you are wanted to verify that, which items are marked or check, then you have to use the foreach loop. In the following code, we have used the foreach loop to get the value from checkedListBox1.CheckedItems into an object-based variable which is itemCheck. Then we have to use message box to show the value of itemCheck in each step of a loop by converting the object type value into a string by calling the ToSting method.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPNet
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            checkedListBox1.Items.Add("TEP 1");
            checkedListBox1.Items.Add("TEP 2");
            checkedListBox1.Items.Add("TEP 3");
            checkedListBox1.Items.Add("TEP 4");
        }

        private void button1_Click(object sender, EventArgs e)
        {          
         foreach (object itemChecked in checkedListBox1.CheckedItems)
            {           
                MessageBox.Show(itemChecked.ToString());
            }
        }   
    }
}
If you are wanted to change the border style of Checked ListBox, then you have to use the BorderStyle property and set the style according to your need. There are three styles which you can apply, all those styles are mention in the following code. You can check them one by one, if you will execute all of these styles at once then only the last one is getting executed and other above will get ignored by the compiler.
checkedListBox1.BorderStyle = BorderStyle.Fixed3D;
checkedListBox1.BorderStyle = BorderStyle.FixedSingle;
checkedListBox1.BorderStyle = BorderStyle.None;

C# Checked ListBox Events

C# provides various events to utilize with GUI tools. We can be used events to Checked ListBox and enhanced its features. Events are introduced to create conditional checks for the users to perform specific functionalities at specific times. You can change any attribute when user will click on the listed or checked items. Changed the color when items mark checked. It depends on the requirement of the software in which you will use the CheckedListBox. Following are some events which we are going to demonstrate with Checked ListBox.
  • Checked ListBox Click Event
  • Checked ListBox MouseHover Event
  • Checked ListBox MouseLeave Event
  • Checked ListBox BackColorChanged Event
  • Checked ListBox ForeColorChanged Event
  • Checked ListBox FontChanged Event
There are many other events, which we can use. Each event has its own logic of occurrence. Some events are common across the GUI Tools and some events are specifically used by GUI Tools. Checked ListBox Click Event This event will be executed when the user clicks within the boundaries of Checked ListBox. Whatever user will click on any listed item, checkbox or border it will get executed. To get the concept of the click event, suppose that you are wanted when someone clicks on CheckedListBox then the message will pop up and show notification of click. In the following program, we have created the code, which can execute in your compiler too.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPNet
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            checkedListBox1.Items.Add("TEP 1");
            checkedListBox1.Items.Add("TEP 2");
            checkedListBox1.Items.Add("TEP 3");
            checkedListBox1.Items.Add("TEP 4");
        }

       
        private void checkedListBox1_Click(object sender, EventArgs e)
 {
 MessageBox.Show("You have Clicked !!");
 }  
    }
}
An output of the above code is given in the following image. You can perform any functionality as you required. For the demonstration purpose just used the message box to reflect any action. In the above code, we have to use the click event, if you want to activate the click event then simply click on the CheckedListBox in the design tab and it will create automatically click function. There is another option to do this, first, create any simple function and then set that function to the click event. In the following image, you can observe that when you click on CheckedListBox _Click function is set to click event.   Checked ListBox MouseHover Event This event will be executed when mouse will hover the boundaries of Checked ListBox. To clear the concept in the following code we are going to perform mousehover function. When user will hover the mouse on the boundaries event will get executed and show the message popup.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPNet
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            checkedListBox1.Items.Add("TEP 1");
            checkedListBox1.Items.Add("TEP 2");
            checkedListBox1.Items.Add("TEP 3");
            checkedListBox1.Items.Add("TEP 4");
        }

        private void checkedListBox1_MouseHover(object sender, EventArgs e)
        {
            MessageBox.Show("Mouse is Hover !!");
        }   
    }
}
The above function is builtin and if you want to set the user define function then you can set by your own in the event property. You can perform any kind of functionality, we have used the message box, if you wanted to change anything then you can change such as the color, font family, and size of the text. In the following image, you can view the output of the above code. Checked ListBox MouseLeave Event This event will be executed when the cursor of the mouse will leave the boundaries of Checked ListBox. Once you have to hover the boundaries and slightly left the boundaries suddenly the popup shown on the screen and remind you that MouseLeave Event is get executed. In the following code, you can be observed the above concept.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPNet
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent(); 
        }
        private void button1_Click(object sender, EventArgs e)
        {
            checkedListBox1.Items.Add("TEP 1");
            checkedListBox1.Items.Add("TEP 2");
            checkedListBox1.Items.Add("TEP 3");
            checkedListBox1.Items.Add("TEP 4");
        }
        private void checkedListBox1_MouseLeave(object sender, EventArgs e)
        {
            MessageBox.Show("Mouse is Leave !!");
        }       
    }
}
MouseLeave is the default function which you can use after the name of CheckedListBox object name. You can set any user define function also as the alternative of the default function. When you will click the button it will be inserted the values in the CheckedListBox and when you hover the mouse cursor and leave the boundaries it will be executed the MouseLeave method. If you will not click the button, in this case, MousLeave method worked also. The following image is the screenshot of output. Checked ListBox BackColorChanged Event This event will occur when you will change the backColor or Background color of CheckListBox. Supposed you are wanted to perform any functionality when the user changed the backColor. Then we will code the functionality in the builtin BackColorChanged event. Instead of performing any functionality we are going to show a message box. In the following code, you can observe we have used the button to change the backColor of checkedListBox. When button will be clicked, the back color will be changed and BackColorChange Event will get executed.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPNet
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            checkedListBox1.Items.Add("TEP 1");
            checkedListBox1.Items.Add("TEP 2");
            checkedListBox1.Items.Add("TEP 3");
            checkedListBox1.Items.Add("TEP 4");
           
        }

        private void button1_Click(object sender, EventArgs e)
        {
            checkedListBox1.BackColor = Color.AliceBlue;
        }

        private void checkedListBox1_BackColorChanged(object sender, EventArgs e)
        {
            MessageBox.Show("BackColor Is Changed !");
        }  
    }
}
In the above code, we have inserted the values in CheckedListBox during the form initialization phase. Then we have declared the Alice Blue as the backColor of the CheckedListBox within button click event. When user will click on the button, a background color of checkedListBox is get changed and the backColorChanged event gets executed. In the following image, you can preview the output of the above code. Checked ListBox ForeColorChanged Event This event is get executed when user will change the ForeColor of CheckedListBox. There are many ways to change ForeColor programmatically. Suppose we have created a button and add instruction to change the ForeColor of CheckListBox. To execute the ForeColor method we have to change the foreColor and best solution is to add foreColor change instruction into button click event. In the following code, you can be observed the above case.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPNet
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            checkedListBox1.Items.Add("TEP 1");
            checkedListBox1.Items.Add("TEP 2");
            checkedListBox1.Items.Add("TEP 3");
            checkedListBox1.Items.Add("TEP 4");

        }

        private void button1_Click(object sender, EventArgs e)
        {
            checkedListBox1.ForeColor = Color.Red;
        }

        private void checkedListBox1_ForeColorChanged(object sender, EventArgs e)
        {
            MessageBox.Show("ForeColor Is Changed !");
        }   
    }
}
In the above code, we have inserted the demo values in the initialization phase of the form. Then we have used the button click event to change the foreColor of the CheckedListBox. Then we have used message box as the functionality which is performed when ForeColor is changed. In the following image, you can observe the output of the above code. Checked ListBox FontChanged Event This event will be executed when the font changed. There are several ways to change the fonts, such as you can change the font on the runtime or changed by the events. In the following code, we will create button event and write instruction to change the font the user click. Then used the message box to show interrupt when the font is getting changed. When any kind of change occurs in the font then this event will be executed, whatever you change the font size or font family. In the code, we just change the size of the font for demonstration.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPNet
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            checkedListBox1.Items.Add("TEP 1");
            checkedListBox1.Items.Add("TEP 2");
            checkedListBox1.Items.Add("TEP 3");
            checkedListBox1.Items.Add("TEP 4");

        }

        private void button1_Click(object sender, EventArgs e)
        {
            checkedListBox1.Font = new Font(Font.FontFamily, 12);
        }

        private void checkedListBox1_FontChanged(object sender, EventArgs e)
        {
            MessageBox.Show("Font Is Changed !");
        }   
    }
}
If you want to execute above code in your compiler, then you have to drag the button and CheckedListBox. Then activate the button click and FontChanged Event. Then copy paste the above code into a compiler and you will be able to execute the program. Below is the output image of above code. In this tutorial, we have tried to give you a basic overview of advanced knowledge of C# Checked ListBox. All the above codes are added after the testing. You can do anything with C# Checked ListBox according to your requirements and ideas. If you face any kind of problem let us know. You can also get similar concepts from C# ListBox and C# ComboBox. You can also get the latest updates of C# Video tutorials from our YouTube Playlist (C# Video Tutorials). Don't forget to share it with your friends.

C# CheckBox Control

Hello, everyone, I hope you are doing great. In this tutorial, I am going to explain you about C# checkbox control, in my previous tutorials I have already explain you, C# RadioButton Control, C# ListBox Control, C# Button Control and C# Checked ListBox Control. C Sharp checkboxes have their own values in point of sale mission and desktop application development. Checkboxes are basically used to retrieve the specific data from the user. C# CheckBox allows the user to give specific input. It's mostly used where we have to retrieve the specific data from the user such as the gender selection, terms and condition agreement, and age-restricted data. You can simply use a single object C# CheckBox or multiple objects it totally depends on your requirement of developing a desktop app.

C# CheckBox Control

C# CheckBox is a simple checkbox along with the text which is the name of the checkbox. It will allow a user to make a multiple and specific selection. If the user will click first time on the checkbox then the small tick sign is marked on a checkbox. When user will click again on the checkbox it will get uncheck. Its mean user can select and deselect the checkbox. If you want to add the checkbox into your desktop application then you have to simply search for it from a toolbox, available in Visual Studio. Then drag the checkbox to your desktop application. Now you are able to use this checkbox. In the following image, you can observe that we have used 15 checkboxes. We just drag one instance of checkbox and replicate that to 14 Times. You will observe that each checkbox have the default name such as checkbox1, checkbox2, checkbox 3 and so on. You have two options to change the name of a checkbox. The first method is that go to the design tab, click on any of the checkboxes. On the right bottom, the property tab gets activate from where you can change the text of checkbox. In the following image, you can observe the property tab from where you can change the text of checkboxes. The second method is to change the name programmatically. You can access the same properties which are available in property tab with the help of programming attributes. Programmatically change the name of checkboxes we have to use text property. In the following code, we have used text property and assign a string value. A string value now becomes the text of checkbox when desktop application is executed.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEP
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            checkBox1.Text = "TEP CheckBox1";
            checkBox2.Text = "TEP CheckBox2";
            checkBox3.Text = "TEP CheckBox3";
            checkBox4.Text = "TEP CheckBox4";
            checkBox5.Text = "TEP CheckBox5";
        }  
    }
}
In the above code, you have observed that we have used text property right after initializecomponent() method. Because we are setting checkbox text dynamically and it will only happen when we will declare this code in the initialization phase of a desktop application. In the following image, you can observe the output of above code.

C# CheckBox Properties

There are several propertie are available, which you can override. In this section, we will discuss all those properties which we can be used to customize C# CheckBox. Such as the Text Color, Text Size, Text Font family etc. The default tools are looks very simple and common. To increase the interactivity of the user we have to create attractive applications and forms. For this purpose, we have to override the default properties. Supposed that you are wanted, if the program is executed Checkbox is by default marked checked. Then we will use the Checked property to mark it true. In the following code, you can observe that we have used three checkboxes to marked them true.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEP
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            checkBox1.Checked = true;
            checkBox2.Checked = true;
            checkBox3.Checked = true;
        }  
    }
}
In the above code, we only marked check first three checkboxes. By this, you can mark check and uncheck the checkboxes by default. In the following image, you can observe the output of above code. Supposed that you are wanted to change the background color of Checkbox. Then you have to use the backColor property available for CheckBox. There are many colors available which you can easily be used for your checkboxes. In the following code, you can be observed the different color for each of the checkboxes.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEP
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            checkBox1.BackColor = Color.AliceBlue;
            checkBox2.BackColor = Color.Beige;
            checkBox3.BackColor = Color.BlueViolet;

            checkBox4.BackColor = Color.BurlyWood;
            checkBox5.BackColor = Color.DarkBlue;
            checkBox6.BackColor = Color.DarkOrange;

            checkBox7.BackColor = Color.DeepSkyBlue;
            checkBox8.BackColor = Color.Gainsboro;
            checkBox9.BackColor = Color.LawnGreen;
            checkBox10.BackColor = Color.LightSeaGreen;
        }  
    }
}
There are ten checkboxes in the above code, each checkbox has a unique color. Color combination is the major part of designing phase. The client basically focused on the front end of the desktop app that's why coloring matters a lot. In the following image, you can be observed that what right color mean to the eye and whats the wrong color means to an eye, its the output of above code. Supposed you are wanted to change the color of font or the foreground then you have to use the ForeColor property. By using the ForeColor property we can change the font color. By using the BackColor we have changed the background color and ForeColor property is the inverse. In the following code we just simply changed the BackColor into ForeColor and all the above color which we used for the background now used as the foreground.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEP
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            checkBox1.ForeColor = Color.AliceBlue;
            checkBox2.ForeColor = Color.Beige;
            checkBox3.ForeColor = Color.BlueViolet;

            checkBox4.ForeColor = Color.BurlyWood;
            checkBox5.ForeColor = Color.DarkBlue;
            checkBox6.ForeColor = Color.DarkOrange;

            checkBox7.ForeColor = Color.DeepSkyBlue;
            checkBox8.ForeColor = Color.Gainsboro;
            checkBox9.ForeColor = Color.LawnGreen;
            checkBox10.ForeColor = Color.LightSeaGreen;
        }  
    }
}
In the above code, some colors are very light in shade and some are dark. We can't judge the color by their names. Because there are many colors to be used. If you want to select any color then you can to try all the color first. In the following image, you can observe the output of the above code. Some colors are the light that's why you can't clearly saw the output. Supposed that you are wanted to change the size of the checkbox text. Then you have to use the font property to assign the text size. We will be used font constructor and passed the two parameters. The first parameter is the prototype and second is the size. In the following code, you can be observed how we set the font size for checkboxes.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEP
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            checkBox1.Font = new Font(Font.FontFamily, 5);
            checkBox2.Font = new Font(Font.FontFamily, 6);
            checkBox3.Font = new Font(Font.FontFamily, 7);

            checkBox4.Font = new Font(Font.FontFamily, 8);
            checkBox5.Font = new Font(Font.FontFamily, 9);
            checkBox6.Font = new Font(Font.FontFamily, 10);

            checkBox7.Font = new Font(Font.FontFamily, 11);
            checkBox8.Font = new Font(Font.FontFamily, 12);
            checkBox9.Font = new Font(Font.FontFamily, 13);
            checkBox10.Font = new Font(Font.FontFamily, 14);
        }  
    }
}
We have used Font.FontFamily as the prototype and integer value as the size of the font. You can also change the font family by using the font constructor. In the following image, you can observe the output of above code. You will also observe that as much integer value is small the size gets decreased and as much the value is incremented the size get increased. If you are wanted to change the font family of C# CheckBox text then you have to use the font constructor. We will pass two parameters the first parameter will be a name of font family and the second parameter will be the size of the text. On the note, you must have to know that font constructor does not allow single parameter. In the following code, you can be observed the name of font families.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEP
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();

            checkBox1.Font = new Font("Times New Roman", 11);
            checkBox2.Font = new Font("Century", 11);
            checkBox3.Font = new Font("Arial", 11);
            checkBox4.Font = new Font("Comic Sans MS", 11);
            checkBox5.Font = new Font("Copperplate Gothic Light", 11);
            checkBox6.Font = new Font("Georgia", 11);
            checkBox7.Font = new Font("Impact", 11);
            checkBox8.Font = new Font("Lucida Console", 11);
        }  
    }
}
All the above font family names are the default fonts which are available in the windows. If you want to use the special kind of font then you have to install that first before use. You have also mentioned the size along with the font family name. In the following image, you can be observed the output of the above code, and what font effects on the desktop application. If you are wanted to validate which checkbox is checked or not then you can simply be used the conditional statements. In the following code, I have used the button in which we have used a conditional statement. We used simple checks that which checkbox is marked will return the message box on the button click. When user will check any checkbox and click on the button it will return the message boxes with the named of marked checkboxes.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEP
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();

            
        }

        private void button1_Click(object sender, EventArgs e)
        {
            if (checkBox1.Checked == true)
            {
                MessageBox.Show(checkBox1.Text);
            }
            if (checkBox2.Checked == true)
            {
                MessageBox.Show(checkBox2.Text);
            }
            if (checkBox3.Checked == true)
            {
                MessageBox.Show(checkBox3.Text);
            }
            if (checkBox4.Checked == true)
            {
                MessageBox.Show(checkBox4.Text);
            }
            if (checkBox5.Checked == true)
            {
                MessageBox.Show(checkBox5.Text);
            }
            if (checkBox6.Checked == true)
            {
                MessageBox.Show(checkBox6.Text);
            }
            if (checkBox7.Checked == true)
            {
                MessageBox.Show(checkBox7.Text);
            }
            if (checkBox8.Checked == true)
            {
                MessageBox.Show(checkBox8.Text);
            }
            if (checkBox9.Checked == true)
            {
                MessageBox.Show(checkBox9.Text);
            }
            if (checkBox10.Checked == true)
            {
                MessageBox.Show(checkBox10.Text);
            }
        }  
    }
}
You can observe the output of the above code in the following image. In which we have to click the button after the selection of checkbox3 and it returns the message box with its name. If you are wanted to set any image as the background of C# checkBox then you have to use the image property and have to set the path of an image. In the following code, we are going to set the image for just checkbox1. Remeber that don't use large images for the background because it will disturb your whole layout.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEP
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            checkBox1.Image = Image.FromFile("C:\\Users\\Jade\\Pictures\\brownImage.jpg");
        }  
    }
}

C# CheckBox Event

C# provides many built-in functions which get executed on certain condition. Each condition is nominated as the event. Such as the TextChange Event. When user will change the text of any tool this event is getting executed. We can create a user define functions and assign them to event handlers. There are many events which we can use to enhance the interaction of C# CheckBox. Following are the basic C# CheckBox Events which we will use in a further section of this tutorial.
  • C# CheckBox BackColorChanged Event
  • C# CheckBox CheckedChanged Event
  • C# CheckBox Click Event
  • C# CheckBox ForeColorChanged Event
  • C# CheckBox MouseHover Event
  • C# CheckBox MouseLeave Event
  • C# CheckBox TextChanged Event
All the above event have their own condition on which they get executed. In the following part, we will discuss them one by one. We will also create example codes to learn their execution reasons and flow.

C# CheckBox BackColorChanged Event

This event raised when someone changed the background color of Checkbox or change color by any sort of code. The main thing behind the execution of this event is changing the background color. If we create a program in which we first change the color of the background and used this event then it will get executed right after background color gets changed. In the following code, you can get the idea. We have used the button click event handler in which we declared the background color for C# CheckBox. Then we have declared the BackColorChanged Event for C# CheckBox. When user will click on the button, background color gets changed and BackColorChanged Event gets executed.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEP
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();   
        }

        private void button1_Click(object sender, EventArgs e)
        {
            checkBox1.BackColor = Color.AliceBlue; 
        }

        private void checkBox1_BackColorChanged(object sender, EventArgs e)
        {
            MessageBox.Show("BackColorChanged Executed!");
        }  
    }
}
We have used AliceBlue color for the background. You can use other colors too, there are varieties of colors are available. In the following image, you can observe the output of above code. We have executed just message box when the color changed, you can perform any kind of functionality.

C# CheckBox CheckedChanged Event

This event is get executed when user will be changed the selection. Supposed you have marked check any checkbox and if you uncheck that CheckedChanged event is get executed. Every time you change the selection it will get executed. In the following code, you can observe that we have used CheckedChanged Event just of the checkBox1. So if a user will change the selection of checkbox1 then only it's get executed.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEP
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            
        }

        private void checkBox1_CheckedChanged(object sender, EventArgs e)
        {
            MessageBox.Show("CheckedChanged Executed!");
        }  
    }
}
You have to create a CheckedChange event for each of the C# CheckBox. We have just created for the first checkBox. In the following image, you can observe that we only mark checked the first checkbox and it returns the message popup.

C# CheckBox Click Event

This event will be executed when user will click on the text or on the checkbox. Supposed that you are wanted to perform any functionality when user will click any specific checkbox then you will be used the Click Event. This event is mostly used with buttons. In the following code you can be observed that we have added this event with the first checkbox so when user will click on the text of the first checkbox or click on the checkbox it will get executed.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEP
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();       
        }

        private void checkBox1_Click(object sender, EventArgs e)
        {
            MessageBox.Show("Click Executed!");
        }  
    }
}
In the above code, we just declare click event for checkbox1 only, if you will copy paste it multiple times and rename as checkbox2 and checkbox3 then it would not work. Because you have also assigned the event to the event property which is on the right bottom of visual studio. In the following image, you can be observed the output after execution of the code.

C# CheckBox ForeColorChanged Event

This event is executed when user will change the ForeColor or foreColor is get changed. Supposed if you have created the button click event and declare the foreColor for any specific C# Checkbox and used ForeColorChanged Event just for that specific CheckBox. Then we can execute this event properly. Because on the click of user ForeColor get changed and the ForeColorChanged event gets executed. In the following code, you have observed the above scenario.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEP
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();

            
        }

        private void button1_Click(object sender, EventArgs e)
        {
            checkBox1.ForeColor = Color.AliceBlue;

        }

        private void checkBox1_ForeColorChanged(object sender, EventArgs e)
        {
            MessageBox.Show("ForeColorChanged Executed!");
        }  
    }
}
When user will click the button, ForeColor of first C# CheckBox is get changed from Black to AliceBlue. After color get changed ForeColorChanged event get executed the return the message popup. In the following image, you can be observed the output that C# CheckBox1 foreColor gets changed.

C# CheckBox MouseHover Event

This event is executed when user will hover the mouse on C# CheckBox. Supposed you are wanted to perform any kind of functionality when user will hover the mouse on CheckBox then you have to use the CheckBox MouseHover event. In the following code, we have used ForeColor to be changed when user will hover the mouse on CheckBox.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEP
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();

            
        }

        private void checkBox1_MouseHover(object sender, EventArgs e)
        {
            checkBox1.ForeColor = Color.BlueViolet;
            MessageBox.Show("ForeColorChanged Executed!");
        }  
    }
}
This is a quite good example to demonstrate the MouseHover event. When user will hover the mouse cursor on the CheckBox1 then ForeColor is get changed into Blue Violet. In the following image, you can get the main idea how it looks after the execution.

C# CheckBox MouseLeave Event

This event is executed when user will hover the mouse and then left the mouse cursor from the boundaries of CheckBox. In short, this event is the inverse of MouseHover event. Now we are going to create animation via MouseLeave and MouseHover event. We will declare the BlueVoilet color for the font when user will hover the mouse and Black color for the font when user will leave the checkBox. Let's have a look at the code and observe its flow of execution.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace strnull
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();

            
        }

        private void checkBox1_MouseHover(object sender, EventArgs e)
        {
            checkBox1.ForeColor = Color.BlueViolet;
            
        }

        private void checkBox1_MouseLeave(object sender, EventArgs e)
        {
            checkBox1.ForeColor = Color.Black;
           
        }  
    }
}
If you want to execute the above code, then you have to drag one checkbox on your windows form. Then add mouse leave and mouse hover event. Copy the above code and inserted into your compiler and executed. When you will hover the mouse on the checkbox1 its font color gets changed and when leaving the checkbox then fore color get to default.

C# CheckBox TextChanged Event

This event is get executed when Text of checkbox is get changed. You can change the text simply write a code. Its depend on your logic and condition of the program. We simply going to change the text when user will click the button. We have used the simple message box to show the prompt that TextChanged event is get executed. In the following code, you can be observed the above scenario.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEP
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();           
        }

        private void button1_Click(object sender, EventArgs e)
        {
            checkBox1.Text = "Changed !";

        }

        private void checkBox1_TextChanged(object sender, EventArgs e)
        {
            MessageBox.Show("Text Changed !!");
        }  
    }
}
For each checkbox, you have to declare the separate TextChanged event handler. In the above code, we declared it just for the checkbox1. So when the default text of checkbox1 is get changed, TextChanged event get raised. In the following image, you can be observed the output. We have tried to explain you about the C# CheckBox from the beginning to its depth. By using the various examples. We have tried to give the touch of professional usage of events used with C# CheckBox with generic coding. All the above codes are tested first then uploaded, you can also check the executed output in the images which are given right after the codes. If you have any kind of problem regarding C# CheckBox you can share it with us, we will try to resolve your problems at first priority. You can also check our previous tutorials like C# ListBox ControlC# Button ControlC# Label Control and C# TextBox Control.

C# RadioButton Control

Hello folks, hope you are doing good. Today in this article I'm going to explain you all about C# RadioButton Control. In my previous articles, we discussed C# Checked ListBox & C# ListBox Control. C# RadioButton is also known as the OptionButton. The radio button allows the user to select the specific values as the input. When user will click on the radio button, it will get activated, a user can select only one radio button at the same time. Radio buttons have mostly used in the point of same applications and signup forms. You have mostly seen the radio button for the gender selection in the forms. Radio button makes easier for a user to give input. You can make specific input values. You can create any kind of application with the help of Radio Button. Even that you can create the polling desktop application by using a Radio button.

C# RadioButton Control

C# RadioButton has its own importance in desktop applications. Mostly point of sale applications used a Radio button to retrieve the specific input values. Such as the payment method is cash or credit. C# RadioButton enables the user to checked just one option at the same time and other options remain unchecked or unselected. If you are wanted to add C# RadioButton in your desktop application then you have to use the ToolBox in the design tab. Just search for the RadioButton and drag it to your application. In the following image, you can be observed that we have added the 8 RadioButtons and only one is selected. Because you can't select more than one RadioButton at the same time. You also observed that the name of radio buttons are the default names. If you want to change their name then you have two options. The first option is to change the name from the property section which is at the right side of visual studio development environment. We have changed the name of the first column radio buttons by this method. In the following image, you can be observed how we changed the name of radio buttons. The second method to change the name of a radio button is programmatically. In the source code, you have to set the radio button name with the help of Text property of radio button. After the name of radio button object call the text property and set the value. In the following code, you can be observed that how we set the value of radio button text property.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEP
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            radioButton5.Text = "TEP Code RB5";
            radioButton6.Text = "TEP Code RB6";
            radioButton7.Text = "TEP Code RB7";
            radioButton8.Text = "TEP Code RB8";
        }
    }
}
It depends on your ease, you can use the both method to set the name of radio buttons. For your better understanding, we have attached the screenshot of output along with the code.

C# RadioButton Properties

If you are wanted to override the default properties of C# RadioButton. Then you have to know about all properties,  such as you can change the color of radio button text, changed the size of text, a color of background and foreground etc. Supposed that you are wanted to change the state of RadioButton, by default every radio button is unchecked, you can be checked any radio button during the execution of a desktop application. In the following code, we have used the Checked property and make that true.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEP
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            radioButton1.Checked = true;
        }
    }
}
If you will add more radio buttons checked true then the only last radio button will be checked. Because you can only be checked one radio button at the same time. In the following image, you can preview that only radio button1 is checked. If you are wanted to change the background color of any RadioButton then you have to use the BackColor property and set the color. There are varieties of color which you can use to set as the background color. In the following code, we have used different colors for each of the buttons.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace strnull
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            radioButton1.BackColor = Color.AliceBlue;
            radioButton2.BackColor = Color.AntiqueWhite;
            radioButton3.BackColor = Color.Aqua;
            radioButton4.BackColor = Color.Aquamarine;
            radioButton5.BackColor = Color.Azure;
            radioButton6.BackColor = Color.Beige;
            radioButton7.BackColor = Color.Bisque;
            radioButton8.BackColor = Color.BlueViolet;
        }
    }
}
You must have to use the Color object to set any color. For the better understanding, we have taken the screenshot of output along with the code which is overriding the color properties. If you are wanted to change the forecolor or the color of the text then you have to use the ForeColor properties. It's same as the BackColor. In the following code, we have used the dark colors to dominate them on a windows form.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEP
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            radioButton1.ForeColor = Color.YellowGreen;
            radioButton2.ForeColor = Color.Tomato;
            radioButton3.ForeColor = Color.Violet;
            radioButton4.ForeColor = Color.Turquoise;
            radioButton5.ForeColor = Color.SteelBlue;
            radioButton6.ForeColor = Color.Sienna;
            radioButton7.ForeColor = Color.SeaGreen;
            radioButton8.ForeColor = Color.BlueViolet;
        }
    }
}
We used the Color object to set the color. In the following image, you can observe that how the color changes the appearance and interface. By using the color schemes you can make eye attractive windows form and make easier for the user to identified usable features of your app. If you are wanted to change the font size for radio button text then you have to use the Font property. To set the size we have to pass the font family prototype and font size as the parameter in font constructor. In the following code, you can observe that how we changed the font size of a radio button.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEP
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            radioButton1.Font = new Font(Font.FontFamily,10);
            radioButton2.Font = new Font(Font.FontFamily, 11);
            radioButton3.Font = new Font(Font.FontFamily, 12);
            radioButton4.Font = new Font(Font.FontFamily, 13);
            radioButton5.Font = new Font(Font.FontFamily, 12);
            radioButton6.Font = new Font(Font.FontFamily, 11);
            radioButton7.Font = new Font(Font.FontFamily, 10);
            radioButton8.Font = new Font(Font.FontFamily, 9);
        }
    }
}
In the above code, we have used a different size for each RadioButton. The first four RadioButton size is increased and other four RadioButton size get a decrease. In the following image, you can observe the size of radio buttons. If you are wanted to change the font family then you have to use the same font property which is used to change the font size. There are two parameters which we used to change the font family, the first parameter is the name of font and second parameter is the size of the text. Font constructor doesn't allow single parameter that's why we passed the size. In the following code, we have used the different fonts for each C# RadioButton.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEP
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            radioButton1.Font = new Font("Times New Roman", 11);
            radioButton2.Font = new Font("Century", 11);
            radioButton3.Font = new Font("Arial", 11);
            radioButton4.Font = new Font("Comic Sans MS", 11);
            radioButton5.Font = new Font("Copperplate Gothic Light", 11);
            radioButton6.Font = new Font("Georgia", 11);
            radioButton7.Font = new Font("Impact", 11);
            radioButton8.Font = new Font("Lucida Console", 11);
            
        }
    }
}
All the above-used fonts are the default font which is available in Windows. If you don't know which font you have to used then used Google Font. It will help you to select the best font for your desktop application. In the following image, you can observe how font changes the appearance of your desktop application. If you are wanted to validate which of the Radio Button is selected as the option then you can use the Checked property after the name of RadioButton Object name. You have to use the If Conditional Statement to create the logic if radio button object is checked then show the popup message. In the following code, we have demonstrated the functionality. Each radio button contains a logical statement to return the value in the message box if it is checked.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEP
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent(); 
        }
        private void button1_Click(object sender, EventArgs e)
        {
            if (radioButton1.Checked == true)
            {
                MessageBox.Show(radioButton1.Text);
            }
            else
            if (radioButton2.Checked == true)
            {
                MessageBox.Show(radioButton2.Text);
            }
            else
            if (radioButton3.Checked == true)
            {
                MessageBox.Show(radioButton3.Text);
            }
            else
            if (radioButton4.Checked == true)
            {
                MessageBox.Show(radioButton4.Text);
            }
            else
            if (radioButton5.Checked == true)
            {
                MessageBox.Show(radioButton5.Text);
            }
            else
            if (radioButton6.Checked == true)
            {
                MessageBox.Show(radioButton6.Text);
            }
            else
            if (radioButton7.Checked == true)
            {
                MessageBox.Show(radioButton7.Text);
            }
            else
            if (radioButton8.Checked == true)
            {
                MessageBox.Show(radioButton8.Text);
            }
        }
    }
}
If you want to try the above code in your own compiler, then you have to add button click event first then you can execute the above code. It will allow you to select an option, and when you press the button it will generate the popup message and return the value of selected radio button. In the following image, you can observe the output of the above code. If you are wanted to use the image as the background for the radio button then you have to use the image property. We will be used the image property to set the path of an image as the background. Don't use the large image as the background because it will extend to screen automatically. In the following code, you can be observed how you can set any image as the background.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEP
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            radioButton1.Image = Image.FromFile("C:\\Users\\Jade\\Pictures\\brownImage.jpg");
        }  
    }
}

C# RadioButton Event

C# allows us to enhance the functionalities according to our requirements. Every desktop application has their own needs and uniqueness. If you want to perform any specific function on the certain time or on the certain action, then we used the C# Events. C# Events are simple as the other common functions, which are provided by the visual studio. You can use any user define a function and set it as the event handler. It depends on the developer ease. Mostly developer used the builtin events. There are several C# Events which are common among all the C# Tools. Some Events are specific to C# Tools, mean you can't use all the events for all the tools. Following are the C# Events which we will be used with RadioButton to enhance the interaction of the end-user.
  • C# RadioButton BackColorChanged Event
  • C# RadioButton CheckedChanged Event
  • C# RadioButton Click Event
  • C# RadioButton ForeColorChanged Event
  • C# RadioButton MouseHover Event
  • C# RadioButton MouseLeave Event
  • C# RadioButton TextChanged Event
We have already mentioned that there are several C# Events which you can use with RadioButton. We just used the above events with RadioButton to give the major concepts behind every event and logical usage.

C# RadioButton BackColorChanged Event

This event will occur only when the background color of a radio button is changed. Supposed we want to show a message or perform any functionality when background color of radio button changed, then we will use BackColorChanged Event. There is two method by which we can set this event for RadioButton. The first method is to activate this event from the property section of radio button via events. The second method is to create a user-defined function and set as the BackColorChanged Event in the event properties. In the following image, you can compare the both method.
First Method Second Method
In the following code, we have used the button and it clicks event. We set the backColor to AliceBlue. When user will click the button, background color set to the AliceBlue. You also observed there is BackColorChanged Event in which we have used just a message box to just demonstrate that something is performed.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace strnull
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();

        }

        private void button1_Click(object sender, EventArgs e)
        {
            radioButton1.BackColor = Color.AliceBlue;
        }

        private void radioButton1_BackColorChanged(object sender, EventArgs e)
        {
            MessageBox.Show("BackColor is changed to " + radioButton1.BackColor.ToString());
        }
        
    }
}
In the above code, when the background color of the radio button is changed. Message prompt with the name of color which is set as the background. In the following image, you can observe the output of the above code.

C# RadioButton CheckedChanged Event

This event will occur and executed when user will change the option, such as user have select A first and then select the B then this event will be executed. In the following code, we are going to demonstrate the above scenario.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEP
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
           
        }

        private void radioButton1_CheckedChanged(object sender, EventArgs e)
        {
            MessageBox.Show("Option changed.");
        }
        
    }
}
In the above code, we have used two radio button. Whenever you will change the radio buttons value or option CheckedChanged event gets executed. In the below image you can observe the output

C# RadioButton Click Event

This event will occur when user will click on the radio button, whatever user will click to check the option or just click in the text of radio button. Supposed that you have required performing any kind of functionality when user will click on the radio button or the text of radio button then you can used Click event which will fulfill your requirement for this scenario. In the following code, we have demonstrated the above scenario.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEP
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
           

        }

        private void radioButton1_Click(object sender, EventArgs e)
        {
            MessageBox.Show("You Clicked!");
        }
        
    }
}
In the above code, we have used two radio buttons and just added the click event to the first radio button. If you will click the radio button1 then you will observe the popup message but if you clicked in the radio button2 then nothing will happen except that radio button2 get selected. It's because we have added the Click event just for the radio button1. In the following image, you can observe the output of above code.

C# RadioButton ForeColorChanged Event

This event gets executed when user will change the font color or fore color of the radio button. Supposed that you have created a button and set fore color changed the code in button click function. So that when user will click the button, fore color get changed and after this ForeColorChanged event performed on the changing of the fore color. In the following code, you can observe the above scenario.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEP
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
           

        }

        private void button1_Click(object sender, EventArgs e)
        {
            radioButton1.ForeColor = Color.BlueViolet;

        }


        private void radioButton1_ForeColorChanged(object sender, EventArgs e)
        {
            MessageBox.Show("ForeColor Is changed to " + radioButton1.ForeColor.ToString());
        }
        
    }
}
In the above code, we have set the ForeColor ti BlueViolet when user will click the button. Then ForeColorChanged Event executed and prompt the message which color is selected as the ForeColor. In the following image, you can observe the output of the above code.

C# RadioButton MouseHover Event

This event is executed whenever the user hovers the cursor of the mouse on the radio button. If you will hover the mouse on radio button text then its also executed because that's also included in the boundaries of a radio button. In the following code, we are going to demonstrate the above scenario.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEP
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
           

        }

        private void radioButton1_MouseHover(object sender, EventArgs e)
        {
            MessageBox.Show("Mouse Hover to " + radioButton1.Text.ToString());
        }
        
    }
}
In the above code, we have set the prompt message when user will hover the first radio button. You can declare any kind of functionality which you want to perform. In the following Image, you can be observed the output.

C# RadioButton MouseLeave Event

This event occurs when mouse cursor will leave the boundaries of the radio button, it's opposite to the mouseHover event. We are going to demonstrate this scenario in the following code along with the MouseHover Event. So that we can be observed both events at once.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace strnull
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void radioButton1_MouseHover(object sender, EventArgs e)
        {
            MessageBox.Show("Mouse Hover to " + radioButton1.Text.ToString());
        }

        private void radioButton1_MouseLeave(object sender, EventArgs e)
        {
            MessageBox.Show("Mouse Left " + radioButton1.Text.ToString());
        }
        
    }
}
In the above code, you cab observed the MouseHover and MouseLeave both events. When user will hover the mouse a prompt message show that user is hover mouse cursor on radiobutton1 and when a user left the radiobutton1 boundaries its show prompt message again. In the below image you can observe the output of above code.

C# RadioButton TextChanged Event

This event will execute when user will change the text. To perform its functionality we have to create a button click event in which we declared to change the radio button text. When user will click the button, a text of radio button is get changed and cause of change text, TextChanged Event get executed. In the following code, we have demonstrated the above scenario. We used the simple message box to pop the message when TextChanged Event gets executed.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEP
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();

        }

        private void button1_Click(object sender, EventArgs e)
        {
            radioButton1.Text = "New Text";
        }

        private void radioButton1_TextChanged(object sender, EventArgs e)
        {
            MessageBox.Show("Radio Button Text changed to " + radioButton1.Text.ToString());
        }
        
    }
}
You can observe in the above code, there are two events. The button click event changed the text of radio button and TextChanged event get executed when text gets changed. In the following image, you can be observed the output. You also observed that when button event is executed radio button text doesn't change but the value is set to new text. After the execute of textChanged Event, it's get changed. It's because all the events have same priority or execution, so first events get executed then their effects applied. We hope you will learn a lot of things from this C# Tutorial. We are looking forward from you about your experience with C# RadioButton. If you want to learn more on C# then you can subscribe our YouTube Channel and Playlist of C# Tutorials. We tried our best to provide you all possible solutions and concepts which you can use with C# RadioButton to enhance your desktop application development. Don't forget to share it with your friends. You can also check C# ListBox ControlC# Button ControlC# Label Control and C# TextBox Control.

C# ListBox Control

Hey, everyone, I hope you all are doing great. In this article, I am going to explain C# ListBox Control. In the previous article, we have discussed the C# ComboBox Control. C# ListBox is quite similar to ComboBox. C# ListBox is just a simple list, which is showing the data. The user can easily select an option from the list by clicking on any of its items. Some features are common in ComboBox and ListBox. Such as the data is inserted like items. Insertion, deletion, and selection are also same. We will insert the values, then after performing the selection, we will delete them. We will also focus on the text styling, colors and events handling etc. So, let's get started with C# ListBox Control:

C# ListBox Control

  • There are multiple functionalities which we can perform with C# ListBox. Usually, we used ListBox to give options in the form of a list.
  • Mostly it's used in signup forms and point of sale applications. If you want to insert the values inside Listbox. Then you have to write the name of the list box and after that write Items.Add("YourData").
  • In the following code, I have inserted countries names as the data of listbox:
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPTUT
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            listBox1.Items.Add("Pakistan");
            listBox1.Items.Add("United States");
            listBox1.Items.Add("United Kingdom");
            listBox1.Items.Add("India");
        }
      
   }
}
  • Here is the image which is generated after the execution of above code:
  • You can add the values in Listboxes using the arrays and string type variables. It depends on the logic of software development.
  • You can also insert the values from the textbox.
  • Here are following example codes which you can use to insert values in C# ListBox:
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPTUT
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            String var1 = "Lahore";
            String var2 = "Multan";
            String var3 = "Islamabad";
            String var4 = "Karachi";
            listBox1.Items.Add(var1);
            listBox1.Items.Add(var2);
            listBox1.Items.Add(var3);
            listBox1.Items.Add(var4);
            
        }
      
   }
}
  • In the above code, we have inserted the values in C# ListBox with the string type variables.
  • You can test the code in your compiler, drag the list box on the windows application and copied the above code and then execute.
  • Now, we are gonna insert data in ListBox using arrays. Here's the code for it:
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPTUT
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();

            String[] city = new String[] { "Lahore", "Multan", "Islamabad", "Karachi"};

            for (int x = 0; x < city.Length; x++)
            {
                listBox1.Items.Add(city[x]);
            }
            
        }
      
   }
}
  • The above code will insert the values in C# ListBox through Array with the help of loop.
  • Now let's have some fun and get some input from the user in C# Textbox Control and then add it in the ListBox.
  • In the below code, I am getting value from the TextBox and then sending it to ListBox:
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPTUT
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();

            
            
        }

        private void button1_Click(object sender, EventArgs e)
        {
            listBox1.Items.Add(textBox1.Text);
        }
      
   }
}
  • In the above code, we have used C# Button Control and C# Textbox Control.
  • A textbox will get the values as the string and button will insert this value into ListBox.
  • Here is the image after execution of above code:
  • Till now, we have hada look at How to insert data in C# ListBox, now we will learn How to select any item from ListBox.
  • Suppose you want to retrieve the selected item value, then you have to use the SelectedItem property.
  • In the below code I have added a button, so after selection of your item, when you click this button, an event will raise and it will generate a message popup of selected item value.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPTUT
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();

            listBox1.Items.Add("A");
            listBox1.Items.Add("B");
            listBox1.Items.Add("C");
            listBox1.Items.Add("D");
            
        }

        private void button1_Click(object sender, EventArgs e)
        {

            MessageBox.Show(listBox1.SelectedItem.ToString());
        }
      
   }
}

C# ListBox Multiple Selection

  • Supposed if you want to select multiple options at the same time, then you have to use the SelectionMode property and set it to the SelectionMode.MultiSimple.
  • Using above mentioned property, you will be able to select multiple items at the same time.
  • In the below code I have used the SelectionMode.MultiSimple property and used the foreach loop to show the message popup with the value of selected items.
  • You just have to drag the list box and button on your application form, then copy the below code and execute it.
  • To get a response on button click you have to select the multiple items in your ListBox:
using System;
using System.Drawing;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        private void Form1_Load(object sender, EventArgs e)
        {
            listBox1.Items.Add("Sunday");
            listBox1.Items.Add("Monday");
            listBox1.Items.Add("Tuesday");
            listBox1.Items.Add("Wednesday");
            listBox1.Items.Add("Thursday");
            listBox1.Items.Add("Friday");
            listBox1.Items.Add("Saturday");
            listBox1.SelectionMode = SelectionMode.MultiSimple;
        }
        private void button1_Click(object sender, EventArgs e)
        {
            foreach (Object obj in listBox1.SelectedItems )
            {
                MessageBox.Show(obj.ToString ());
            }
        }
    }
}
  • Here is the screenshot of the above code execution.
  • You can clearly see that I have select the first three indexes and It generates the message popup of just Sunday.
  • Because I have used the foreach loop and it will give output in the form of the cycle and each cycle contain just one output.
  • When you will close the popup the next selected index value is shown in the message box. It's running until the selected indexes are left.

Clear C# ListBox

  • Supposed you are wanted to remove all the values at once from listbox then you have to use the clear method.
  • In the following code I have inserted the values inside Listbox and when user will click on the button it will clear the whole list.
  • Create the new application and drag button and listbox. Then copy the following code and execute it:
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPTUT
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            listBox1.Items.Add("A");
            listBox1.Items.Add("B");
            listBox1.Items.Add("C");
            listBox1.Items.Add("D");
           
            
        }

        private void button1_Click(object sender, EventArgs e)
        {
            listBox1.Items.Clear();
        }
      
   }
}

Remove C# ListBox Items

  • If you are wanted to remove a specific index or specific item value then you have to use Remove or RemoveAt methods.
  • Remove method is used to delete the value by the exact wording and RemoveAt method is used to delete values according to the indexes.
  • Here's the code for it:
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPTUT
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            listBox1.Items.Add("A");
            listBox1.Items.Add("B");
            listBox1.Items.Add("C");
            listBox1.Items.Add("D");       
        }

        private void button1_Click(object sender, EventArgs e)
        {
            listBox1.Items.RemoveAt(0);
        }
      
   }
}
  • The above code is removing the values by the reference of the index number.
  • When the user will click on the button the Zero index is getting removed from the list.
  • When the zero index is getting deleted the next index has automatically become zero.
  • The following code is the implementation of this Method:
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPTUT
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            listBox1.Items.Add("A");
            listBox1.Items.Add("B");
            listBox1.Items.Add("C");
            listBox1.Items.Add("D");
           
            
        }

        private void button1_Click(object sender, EventArgs e)
        {
            listBox1.Items.Remove("A");
        }
      
   }
}
  • The above code will delete the exact matched value only.
  • I have selected A to delete. When you will execute the above code and click the button it will only remove the A.
  • On the next button click it will not remove any of the indexes.

How to Change C# ListBox Text Size

  • If you have to change the text size of C# ListBox, then you have to use Font property.
  • In the following code, there is button click event, in which I have declared that when user will click the button the size of C# ListBox text will increase.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPTUT
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            listBox1.Items.Add("A");
            listBox1.Items.Add("B");
            listBox1.Items.Add("C");
            listBox1.Items.Add("D");           
        }

        private void button1_Click(object sender, EventArgs e)
        {
    listBox1.Font = new Font(Font.FontFamily, 12);
        }
      
   }
}

How to Change C# ListBox Text Background Color

  • If you are want to change the color of text or the background color of text. Then you have to use the BackColor property.
  • In the following code, we have to change the color of list box text background.
  • There are many colors which you can use as backColor.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPTUT
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            listBox1.Items.Add("A");
            listBox1.Items.Add("B");
            listBox1.Items.Add("C");
            listBox1.Items.Add("D");
            listBox1.BackColor = Color.LightCyan;
        }
        
   }
}
  • Here's the screenshot of output to give you an idea:

Changed C# ListBox Text Foreground Color

  • If you are wanted to change the color of text or the foreground color, then you have to use the ForeColor property.
  • In the following code, we have changed the color of the text to white and backColor to black, to prominent the text.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPTUT
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            listBox1.Items.Add("The");
            listBox1.Items.Add("Engineering");
            listBox1.Items.Add("Projects");
            listBox1.Font = new Font(Font.FontFamily, 15);
            listBox1.BackColor = Color.Black;
            listBox1.ForeColor = Color.White;
        }
        
      
   }
}

C# ListBox Events

  • If you want to perform specific tasks and functionality when user will do something specific, then we will use the C# Events.
  • Some events are common across all the GUI tools. Now we will learn some events which will be worked with ListBox.
  • Click Event
  • Double Click Event
  • MouseHover Event
  • MouseLeave Event
  • BackColorChanged Event
  • ForeColorChanged Event
  • SelectedIndexChanged Event

There are several more events which you can try to make list box more interactive. These events are used to give innovative concepts.

C# ListBox Click Event

  • This event is used when you are wanted to perform any action in return of single click on Listbox.
  • Suppose you want to show any kind of warning message in the form of a popup.
  • Then we will be used this function.
  • In the below code I have created a program, which will show the message when user will click once on the Listbox.
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPTUT
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();

        }

        private void listBox1_Click(object sender, EventArgs e)
        {
            MessageBox.Show("Warn ! Click is disable..");
        }
        
      
   }
}
  • Here is the image of above code after execution.

  • You can perform any kind of functionality with _Click Event. You can guide the user with these kinds of popup messages, about how to use your developed application.

C# ListBox Double Click Event

This event occurs when user will click twice on the Listbox. Supposed you are wanted to perform any action when user will double click on the ListBox, then we will use this event. In the following code, we are changing the back color of ListBox when user will click twice.

using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPTUT
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();

        }
        private void listBox1_DoubleClick(object sender, EventArgs e)
        {
            listBox1.BackColor = Color.Black;
        }     
   }
}

To demonstrate double click event, we changed the color. You can code any functionality according to your needs.

C# ListBox MouseHover Event

This event occurs when user will hover mouse cursor on the Listbox. In the following code, we have changed the foreColor on mouse hover. When the mouse cursor will hover the color of font will be changed.

using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPTUT
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            listBox1.Items.Add("The Engineering Projects");
        }

        private void listBox1_MouseHover(object sender, EventArgs e)
        {
            listBox1.ForeColor = Color.Bisque;
        }     
   }
}

C# ListBox MouseLeave Event

This event occurs when user will remove the cursor from the Listbox. In the above code, we have changed the forecolor when a user hovers the mouse cursor. In the below code, we will change the forecolor again to black when a user removes mouse cursor.

using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPTUT
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            listBox1.Items.Add("The Engineering Projects");
        }

        private void listBox1_MouseHover(object sender, EventArgs e)
        {
            listBox1.ForeColor = Color.Bisque;
        }

        private void listBox1_MouseLeave(object sender, EventArgs e)
        {
            listBox1.ForeColor = Color.Black;
        }     
   }
}

C# ListBox BackColorChanged Event

This event occurs when user will change the background color of the Listbox. In the following code, we are going to change the color of background when user will hover the mouse on ListBox. When color will change, BackColorChanged event will occur. In which we will show popup message.

using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPTUT
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            listBox1.Items.Add("The Engineering Projects");
        }

        private void listBox1_MouseHover(object sender, EventArgs e)
        {
            listBox1.BackColor = Color.Bisque;
        }

        private void listBox1_BackColorChanged(object sender, EventArgs e)
        {
            MessageBox.Show("BackGround Color is changed !!");
        }
    
   }
}

C# ListBox ForeColorChanged Event

This event occurs when user will change the foreground color of the Listbox. In the following code, we will be used mouse hover event to changed the foreColor and ForeColorChanged Event also. The forecolorchanged event will raise the message popup when a color of the foreground is getting changed.

using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPTUT
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            listBox1.Items.Add("The Engineering Projects");
        }

        private void listBox1_MouseHover(object sender, EventArgs e)
        {
            listBox1.ForeColor = Color.Bisque;
        }

        private void listBox1_ForeColorChanged(object sender, EventArgs e)
        {
            MessageBox.Show("ForeGround Color is changed !!");
        }
    
   }
}

C# ListBox SelectedIndexChanged Event

This event occurs when user will select any item in the Listbox. In the below code I have taken two list box. When user will select any value from the first list box then according to that value listbox2 will show it's valued.

using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPTUT
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            listBox1.Items.Add("The Engineering Projects");
            listBox1.Items.Add("C# Tutorials");
        }

      

        private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (listBox1.SelectedIndex == 0)
            {
                listBox2.Items.Clear();
                listBox2.Items.Add("Arduino Projects");
                listBox2.Items.Add("Proteus Projects");
                listBox2.Items.Add("Matlab Projects");
            }
            else
                if (listBox1.SelectedIndex == 1)
                {
                    listBox2.Items.Clear();
                    listBox2.Items.Add("C# Label");
                    listBox2.Items.Add("C# TextBox");
                    listBox2.Items.Add("C# ComboBox");
                }
        }
    
   }
}

If you wanted to test the above code, then place two list boxes and copied the above code.

  • Here's the Video for C# ListBox Control:

We have tried to give basics to major concepts of C# ListBox. All the above codes are working fine and added after testing. If you will cover all the above codes then you will become able to play with ListBoxes. ListBoxes play very important roles in Point Of Sale applications. Thanks for reading our tutorial, moreover you can watch ListBox video.

C# Button Control

Hey, everyone, I hope you are doing great. In this article, I will guide you about the C# Button Control. In my previous article, I have show you How to use C# Label Control. C# Button Control is quite familiar to Label Control. If you have a strong grip on the Label than its quite easy to understand the button control. Basically, the button is very important part of every software. Because we deal every action and event with buttons in any software. You have noticed that in mega software 40% of the projects is based on the button events.

Button are reusable components such as the exit and quit buttons which will perform the same functionality in each form and able to reuse again and again. The button will give end-user quite a clear navigation of software. The shape of the button is unique and have its own appearance properties by which its user can easily judge where is the button located. In short, the button is the controller which is used to create interactivity between user and application. Did you know that button is directly inherited from its base class? which is ButtonBase. You can click the button with the mouse and even with keyboard keys, it depends on the situation. So, let's have a look at How to sue C# Button Control:

C# Button Control

There are two ways using which you can add the C# button into your program. First one is the programming way to create a button.It's quite difficult one. The second way is to drag the button directly from the toolbar and place it on your application. Which is much easier than the programming one. When you drag the button you will get the default name of the button as button1 which you can change from the right panel under the properties tab.

  • If you want to change the button text during the run time or dynamically then you have to write the code, as shown below:
button1.Text = "TEP Button Example Text";
  • After the name of a button when you will insert the (.) dot, lot of functions will pop up.
  • You have to select the Text attribute and after the (=) equal sign just place the text inside double quotation which will become the string.
  • You can also try the other attribute which comes after the (.) dot.

  • I have already explained, how you can change the background color and foreground color of the C# Label Control, these properties are exactly same for C# Button Control.
  • If you want to show the image inside the button then you have to use the Image property.
  • FromFile is used to set the path of an image which you want to set.
  • Here is the example code where we have set the brownImage.jpg inside button.
button1.Image = Image.FromFile("C:\\Users\\Jade\\Pictures\\brownImage.jpg");
  • Here is the image after the execution of above code.
  • You just have to drag the button on the form and set the dimensions by drag the coordinates of the button to make it larger.
  • Then place the above code in the main function and don't forget to change the path along with an extension of an image and you have done to set image for the button.

  • If you want to set the background color of the button then you have to use the BackColor property.
  • With BackColor property we can change the colors.
  • Here is the demo code in which we have changed the color of the button.
  • You can use the builtin color attributes to set colors.
button1.BackColor = Color.Aqua;
  • Here is the image of the code after execution, there are many colors which you can be used and we have select Aqua for the demonstration purpose.

  • Now you have done with a Background color, what about the foreground color.
  • If you want to change the color of foreground or text then you have to use the ForeColor property which will help us to set text color.
  • Below is the example code which will change the foreground color. I'm going to set the foreground color to white.
button1.ForeColor = Color.White;
button1.BackColor = Color.Black;
  • In the above code, we have used BackColor as black to prominent the effect of a foreground.
  • Here is the image after executing the above code:

  • If you want to change the size of button text, then you have used the Font property.
  • The above codes are easier to remember but this code is difficult.
  • Because you have to change the font size with technical parsing.
  • It's mean you can observed the below code, that we have used the Font property and allocate new Font object and passed the button.font.fontfamily and after the comma, there is the size of the button text.
button1.ForeColor = Color.White;
button1.BackColor = Color.Black;
button1.Font = new Font(button1.Font.FontFamily, 33);
  • You can do the above code in an alternative way which is easier to understand.
  • First, take the integer type variable and allocated the size and then pass as the reference in Font Object constructor, as shown in below code:
int newSize = 33;
button1.ForeColor = Color.White;
button1.BackColor = Color.Black;
button1.Font = new Font(button1.Font.FontFamily, newSize);
  • Here is the output image of the above code, you can clearly get the concept from this:

There are several events which we can use with buttons. Events are some conditional checks to perform the specific functionalities when user will do something specific. C# programming language provides a couple of events which you can use with button and we are going to implement some of them which are commonly used. Here is the list of common events which are used with C# Button.
  • Click Event
  • Text Changed Event
  • MouseHover Event
  • MouseLeave Event

Now we will create the code of above-listed events and handle them with their methods. You can create separate methods and appoint them in replacement of built-in methods. But that's some difficult, so we will simply use the built-in methods.

C# Button Click Event

This event will occur when end user will click on the button once. If you want to perform any functionality when user will click on the button then we will use the _Click event to handle this functionality. After the name of a button, you have to write the _Click, suppose you go with default name which is button1. Then you have to create the method with name button1_Click. In the following code, I have used the button when user will click, it will generate the message box.

using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPTUT
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        private void Form1_Load(object sender, EventArgs e)
        {
       
        }

        private void button1_Click(object sender, EventArgs e)
        {
            MessageBox.Show("C# Button Click Event Executed");
        }
       

        
   }
}

C# Button Text Changed Event

This event occurs when the text of the button is changed. This is the built-in method with the name _TextChanged. In the following code, there is a button1_TextChanged event which will generate the message popup when the text of the button is changed. Button1_Click event is used to change the text when user will click. Logic is when user will click the button, the text of button will be changed and button1_TextChanged is performed.

using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPTUT
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        private void Form1_Load(object sender, EventArgs e)
        {
       
        }

        private void button1_Click(object sender, EventArgs e)
        {
            button1.Text = "New Text";
        }

       
        private void button1_TextChanged(object sender, EventArgs e)
        {
            MessageBox.Show("C# Button TextChanged Event");
        }
       

        
   }
}

C# Button MouseHover Event

This event occurs when user will hover the mouse cursor on the button. This is a built-in event with the name _MouseHover after the default name of the button or your desired button named. Here in this code, we have used the default name of a button which is button1. When user will hover the mouse cursor over the button it will generate the message popup.

using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPTUT
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        private void Form1_Load(object sender, EventArgs e)
        {
       
        }

    

        private void button1_MouseHover(object sender, EventArgs e)
        {
            MessageBox.Show("C# Button MouseHover Event");
        }
       

        
   }
}

C# Button MouseLeave Event

This event is occurring when user will leave the button or move the cursor from the button boundaries. In the following code, we have created the _MouseLeave event with the default name of the button. When user will remove the mouse cursor out of button it will get executed and generate the message popup.

using System;
using System.Drawing;
using System.Windows.Forms;

namespace TEPTUT
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        private void Form1_Load(object sender, EventArgs e)
        {
       
        }

        private void button1_MouseLeave(object sender, EventArgs e)
        {
            MessageBox.Show("C# Button MouseLeave Event");
        }
       

        
   }
}
  • Here's the video in which I have shown How to use these codes:

Now you are able to add functionalities in C# button. We have tried to explain you the major concepts so that you can get the idea to work with C# button. By using the above events you can make your software more accurate and interactive. We have described the basic two major functionalities. Now you are able to change text, color, style, and handle the events. If are facing any kind of problem regarding the codes, let us know through the comment section.

Syed Zain Nasir

I am Syed Zain Nasir, the founder of <a href=https://www.TheEngineeringProjects.com/>The Engineering Projects</a> (TEP). I am a programmer since 2009 before that I just search things, make small projects and now I am sharing my knowledge through this platform.I also work as a freelancer and did many projects related to programming and electrical circuitry. <a href=https://plus.google.com/+SyedZainNasir/>My Google Profile+</a>

Share
Published by
Syed Zain Nasir