How to set Background Color of the FlowLayoutPanel in C#? - GeeksforGeeks

02 Aug, 2019
In Windows Forms, FlowLayoutPanel control is used to arrange its child controls in a horizontal or vertical flow direction. Or in other words, FlowLayoutPanel is a container which is used to organize different or same types of controls in it either horizontally or vertically. In FlowLayoutPanel control, you can set the background color of the control using BackColor Property. This property is an ambient property. You can set this property in two different ways:
1. Design-Time: It is the easiest way to set the background color of the FlowLayoutPanel as shown in the following steps:
Step 1: Create a windows form as shown in the below image:Visual Studio -> File -> New -> Project -> WindowsFormApp
Step 2: Next, drag and drop the FlowLayoutPanel control from the toolbox to the form as shown in the below image:
Step 3: After drag and drop you will go to the properties of the FlowLayoutPanel and set the background color of the FlowLayoutPanel as shown in the below image:Output:
Output:
2. Run-Time: It is a little bit trickier than the above method. In this method, you can set the background color of the FlowLayoutPanel control programmatically with the help of given syntax:
public virtual System.Drawing.Color BackColor { get; set; }
The following steps show how to set the background color of the FlowLayoutPanel dynamically:
Step 1: Create a FlowLayoutPanel using the FlowLayoutPanel() constructor is provided by the FlowLayoutPanel class.// Creating a FlowLayoutPanel
FlowLayoutPanel f = new FlowLayoutPanel(); 

// Creating a FlowLayoutPanel
FlowLayoutPanel f = new FlowLayoutPanel(); 

Step 2: After creating FlowLayoutPanel, set the BackColor property of the FlowLayoutPanel provided by the FlowLayoutPanel class.// Setting the background color
f.BackColor = Color.LightPink;

// Setting the background color
f.BackColor = Color.LightPink;

Step 3: And last add this FlowLayoutPanel control to the form and also adding child controls in the FlowLayoutPanel using the following statements:// Adding a FlowLayoutPanel
// control to the form
this.Controls.Add(f);

and 

// Adding child controls to
// the FlowLayoutPanel
f.Controls.Add(r1);

// Adding a FlowLayoutPanel
// control to the form
this.Controls.Add(f);

and 

// Adding child controls to
// the FlowLayoutPanel
f.Controls.Add(r1);

Example:
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 WindowsFormsApp50 {  public partial class Form1 : Form {      public Form1()    {        InitializeComponent();    }      private void Form1_Load(object sender, EventArgs e)    {        // Creating and setting the        // properties of FlowLayoutPanel        FlowLayoutPanel f = new FlowLayoutPanel();        f.Location = new Point(380, 124);        f.AutoSize = true;        f.AutoSizeMode = AutoSizeMode.GrowAndShrink;        f.Name = "Mycontainer";        f.Font = new Font("Calibri", 12);        f.FlowDirection = FlowDirection.RightToLeft;        f.BorderStyle = BorderStyle.Fixed3D;        f.ForeColor = Color.BlueViolet;        f.BackColor = Color.LightPink;        f.Visible = true;          // Adding this control to the form        this.Controls.Add(f);          // Creating and setting the         // properties of radio buttons        RadioButton r1 = new RadioButton();        r1.Location = new Point(3, 3);        r1.Size = new Size(95, 20);        r1.Text = "R1";          // Adding this control        // to the FlowLayoutPanel        f.Controls.Add(r1);          RadioButton r2 = new RadioButton();        r2.Location = new Point(94, 3);        r2.Size = new Size(95, 20);        r2.Text = "R2";          // Adding this control         // to the FlowLayoutPanel        f.Controls.Add(r2);          RadioButton r3 = new RadioButton();        r3.Location = new Point(3, 26);        r3.Size = new Size(95, 20);        r3.Text = "R3";          // Adding this control to         // the FlowLayoutPanel        f.Controls.Add(r3);    }}}
Output:
CSharp-Windows-Forms-Namespace
C#
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Extension Method in C#
HashSet in C# with Examples
C# | Inheritance
Partial Classes in C#
C# | Generics - Introduction
Top 50 C# Interview Questions & Answers
Switch Statement in C#
Convert String to Character Array in C#
C# | How to insert an element in an Array?
Linked List Implementation in C#