バージョン

CurrentState プロパティ (UltraMonthViewMulti)

コントロールの現在の状態を示すビットフラグを返します。
シンタックス
'宣言
 
Public ReadOnly Property CurrentState As MonthViewMultiState
public MonthViewMultiState CurrentState {get;}
解説

Keypress への応答を処理するとき (KeyActionMappings) ならびに PerformAction(MonthViewMultiAction) を使用するときに CurrentState を使用します。

使用例
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 );

}
参照