With Bunifu CheckBox you can design way good looking checkboxes that will guarantee great user experience.

Bunifu CheckBox works like the standard CheckBox and is used by the user for selecting options. 

Adding Bunifu CheckBox in design time

To use Bunifu CheckBox in design time simply locate it in your toolbox.

Drag Bunifu CheckBox to your form 

Custom properties

  • Style - This property allows you to apply style to your checkbox. There are three styles you can apply with Bunifu CheckBox. These include: Flat style (Applies modern flat design type style), Round style (Allows you to create circular smooth checkbox), Bunifu style (Renders standard default checkbox)

OnCheck state properties

With Bunifu CheckBox you can further apply a number of properties to your checkbox when checkbox state is checked including:

  • Border color - This property allows you to set the checkbox border color
  • Border radius  - This property allows you to set the border radius of your checkbox hence defines the roundness of your checkbox
  • Border thickness - This property allows you to set the border thickness of your checkbox
  • CheckBoxColor -  This property allows you to apply inner fill color of your checkbox by setting the color value
  • CheckmarkColor - This property allows you to define the color of the tick icon of the checkbox
  • CheckmarkThickness - This property allows you to set the thickness of the tick icon in the checkbox control
  • UseBorderThicknessForCheckmark – This property allows you to apply border thickness once for both the checkbox outline and the tick icon

OnUncheck state properties

Similarly you can customize Bunifu CheckBox further when its state is unchecked with the following custom properties:

  • BorderColor - This property allows you to set the checkbox border color
  • BorderRadius - This property allows you to set the border radius of your checkbox hence defines the roundness of your checkbox
  • BorderThickness - This property allows you to set the border thickness of your checkbox

OnDisable state properties

Additionally you can customize further Bunifu CheckBox when it's state is inactive as shown below

 Below are available custom properties for OnDisable state:

  • BorderColor - This property allows you to set the checkbox border color
  • BorderRadius - This property allows you to set the border radius of your checkbox hence defines the roundness of your checkbox
  • BorderThickness - This property allows you to set the border thickness of your checkbox
  • CheckBoxColor - This property allows you to apply inner fill color of your checkbox by setting the color value
  • CheckmarkColor - This property allows you to define the color of the tick icon of the checkbox
  • CheckmarkThickness - This property allows you to set the thickness of the tick icon in the checkbox control
  • UseBorderThicknessForCheckmark - This property allows you to apply border thickness once for both the checkbox outline and the tick icon

OnHoverUnchecked state properties 

Similarly you can customize further the appearance of Bunifu CheckBox when its hovered and the state is unchecked. Below are available properties:

  • BorderColor - This property allows you to set the checkbox border color
  • BorderRadius - This property allows you to set the border radius of your checkbox hence defines the roundness of your checkbox
  • BorderThickness - This property allows you to set the border thickness of your checkbox
  • CheckBoxColor - This property allows you to apply inner fill color of your checkbox by setting the color value
  • CheckmarkColor - This property allows you to define the color of the tick icon of the checkbox
  • CheckmarkThickness - This property allows you to set the thickness of the tick icon in the checkbox control
  • UseBorderThicknessForCheckmark - This property allows you to apply border thickness once for both the checkbox outline and the tick icon

Additional properties

  • ToolTip - This property allows you to set tooltip text that will be displayed on mouse hover
  • AllowOnHoverStates - This property allows you to set Boolean value indicating whether Bunifu CheckBox will allow the OnHoverChecked and OnHoverUnchecked states to be active at runtime  
  • AllowAnimations - This property allows you to set a Boolean value indicating whether the CheckBox will allow check-state change animations at runtime
  • BindingControl -  This property allows you to set the control to tie specifically with the CheckBox. To add space to the left margin use Margin-Left property whenever the BindingControlPosition property has been set to the Left or Margin-Right property whenever the BindingControlPosition has been set to the Right
  • BindingControlPosition - This property allows you to set the position of the bound control either to the Right or the Left in relation to CheckBox position
  • AllowBindingControlLocation - This property allows the control bound to the CheckBox to adjust its position automatically whenever the CheckBox’s location changes
  • AllowBindingControlAnimation - This property allows you to set a true or false value indicating whether the bound control will allow the BindingControlAnimation to be applied to it.

Custom events

  • CheckedChanged - This event occurs whenever the Checked property is changed. The sample code below applies event to listen to check-state changes in the CheckBox

C# Code

private void Form1_Load(object sender, EventArgs e)

{

    bunifuCheckBox1.CheckedChanged += bunifuCheckBox1_CheckedChanged;    

}

private void bunifuCheckBox1_CheckedChanged(object sender, Bunifu.UI.WinForms.BunifuCheckBox.CheckedChangedEventArgs e)

{
    if (e.Checked == true)

    {
        MessageBox.Show("Checked");

    }

    else

    {
        MessageBox.Show ("Unchecked");

    }

}

VB.NET Code

Private Sub BunifuCheckBox1_CheckedChanged(ByVal sender As Object, ByVal e As Bunifu.UI.WinForms.BunifuCheckBox.CheckedChangedEventArgs)

    Handles BunifuCheckBox1.CheckedChanged

    If e.Checked = True Then

        MsgBox("Checked")

    Else

        MsgBox("Unchecked")

    End If

End Sub
  • CheckStateChanged -  This event occurs whenever the CheckState property is changed. The following code sample applies this event to listen to check-state changes in the CheckBox:

C# Code

private void Form1_Load(object sender, EventArgs e)

{
    bunifuCheckBox1.CheckStateChanged += bunifuCheckBox1_CheckStateChanged;    

}

private void bunifuCheckBox1_CheckStateChanged(object sender, Bunifu.UI.WinForms.BunifuCheckBox.CheckStateChangedEventArgs e)

{
    if (e.CheckState == Bunifu.UI.WinForms.BunifuCheckBox.CheckStates.Indeterminate)

    {
        MessageBox.Show("Indeterminate Mode");

    }

}

VB.NET Code

Private Sub BunifuCheckBox1_BindingControlChanged(sender As Object, e As BunifuCheckBox.BindingControlChangedEventArgs) 

    Handles BunifuCheckBox1.BindingControlChanged

    If e.Control = System.Windows.Forms.Label Then

        MsgBox("The currently bound control is a Label")

    End If

End Sub
  • BindingControlPositionChanged - This event occurs whenever the BindingControlPosition property has been changed

C# Code

private void Form1_Load(object sender, EventArgs e)
{

bunifuCheckBox1.BindingControlPositionChanged += bunifuCheckBox1_BindingControlPositionChanged;

}
 
private void bunifuCheckBox1_BindingControlPositionChanged(object sender, Bunifu.UI.WinForms.BunifuCheckBox.PositionChangedEventArgs e)
{
    if (e.BindingControlPosition == Bunifu.UI.WinForms.BunifuCheckBox.BindingControlPositions.Left)

    {
        MessageBox.Show("Position changed to Left");
    }

}


VB.NET Code

Private Sub BunifuCheckBox1_BindingControlPositionChanged(sender As Object, e As BunifuCheckBox.PositionChangedEventArgs) _
    Handles BunifuCheckBox1.BindingControlPositionChanged
 
    If e.BindingControlPosition = BunifuCheckBox.BindingControlPositions.Left Then
        MsgBox("Position changed to Left")
    End If
 
End Sub


That's it!

It's our hope you will enjoy Bunifu CheckBox and that it will help you create better user experience for your users. 

Should you have feedback or suggestions please send us via chat on the bottom right corner of the screen

Did this answer your question?