2009年10月13日火曜日

.NET(Mobile) Controlのドロップダウンが展開されているかを取得する

CompactFrameworkでComboBoxやDateTimePickerのドロップダウンリストが展開されているかどうかを取得するサンプルです。
CompactFrameworkではDroppedDownプロパティがサポートされていないのでAPIを使用します。

Dim isDroppedDown As boolean
Dim cbo As ComboBox = Me.ComboBox1
If Api.SendMessage(cbo.Handle, Api.GETDROPPEDSTATE, 0, 0) = 1 Then
    isDroppedDown = True
Else
    isDroppedDown = False
End If


API
Public Class Api
    Public Const GETDROPPEDSTATE As Integer = &H157
     _
    Public Shared Function SendMessage(ByVal hWnd As IntPtr, ByVal wMsg As Integer, ByVal wParam As Integer, ByVal lParam As Integer) As Integer
    End Function
End Class

0 件のコメント: