Version

MonthViewMultiState Enumeration

Bit flags that describe the state of the control.
Syntax
'Declaration
 
Public Enum MonthViewMultiState 
   Inherits System.Enum
public enum MonthViewMultiState : System.Enum 
Members
MemberDescription
ActiveDayThere is an active day.
MonthPopupDisplayedThe Month popup window is currently displayed.
VisibleMonthsThere is at least one visible month displayed.
Example
This example displays information about the control's current state in a message box.

Private Sub GetCurrentState()

    Dim info As String = "The control is in the following state(s):" + vbcrlf + vbcrlf

    '	The CurrentState property is expressed in terms of bit flags,
    '	since the control can be in more than one distinct state at any
    '	given time. We will strip each bit that is set until we are left with
    '	no set bits, recording the corresponding state value with each iteration.
    Dim state As Long = Me.ultraMonthViewMulti1.CurrentState
    Dim mask As Long = 1
    While (state > 0)
        '	See if the bit that corresponds to the current value of the mask
        '	is set if it is, get the name of the enumeration for that state
        If ((state And mask) <> 0) Then

            Dim controlState As MonthViewMultiState = mask
            info += controlState.ToString() + vbcrlf
        End If

        '	Strip out the bit so we know when to exit this while loop
        state = state And (Not mask)

        '	Multiply the mask by 2 to set it to the next power of 2,
        '	effectively shifting the bit position we are checking one
        '	place to the right
        mask *= 2
    End While

    '	Display the state information in a message box
    MessageBox.Show(info, "GetCurrentState", MessageBoxButtons.OK)

End Sub
private void GetCurrentState()
{

	string info = "The control is in the following state(s):" + "\n" + "\n";

	//	The CurrentState property is expressed in terms of bit flags,
	//	since the control can be in more than one distinct state at any
	//	given time. We will strip each bit that is set until we are left with
	//	no set bits, recording the corresponding state value with each iteration.
	long state = (long)this.ultraMonthViewMulti1.CurrentState;
	long mask = 1;
	while ( state > 0 )
	{
		//	See if the bit that corresponds to the current value of the mask
		//	is set; if it is, get the name of the enumeration for that state
		if ( ( state & mask ) != 0 )
		{
			MonthViewMultiState controlState = (MonthViewMultiState)( mask );
			info += controlState.ToString() + "\n";

			//	Strip out the bit so we know when to exit this while loop
			state &= ~mask;
		}

		//	Multiply the mask by 2 to set it to the next power of 2,
		//	effectively shifting the bit position we are checking one
		//	place to the right
		mask *= 2;
	}

	//	Display the state information in a message box
	MessageBox.Show( info, "GetCurrentState", MessageBoxButtons.OK );

}
Requirements

Target Platforms: Windows 10, Windows 8.1, Windows 8, Windows 7, Windows Server 2012, Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

See Also