GoodJuJu Ответов: 0

Установить шрифт в комбобоксе водяные знаки курсив, используя CB_SETCUEBANNER VB.NET


У меня есть ComboBox в моем приложении, который отображает водяной знак " Поиск..."

Водяной знак добавляется с помощью CB_SETCUEBANNER:

'Private Const EM_SETCUEBANNER As Integer = &H1501 (TextBox)
Private Const CB_SETCUEBANNER As Integer = &H1703 '(ComboBox)

<DllImport("user32.dll", EntryPoint:="SendMessageW")> _
       Private Shared Function SendMessageW(ByVal hWnd As IntPtr, ByVal Msg As UInteger, ByVal wParam As UInteger, <MarshalAs(UnmanagedType.LPTStr)> ByVal lParam As String) As Integer
       End Function

SendMessageW(CBSearch.Handle, CB_SETCUEBANNER, 0, "Search...")


Я хочу, чтобы текст SETCUEBANNER "поиск..." был выделен курсивом. Есть ли способ, чтобы передать дополнительный параметр в SETCUEBANNER?


Большое спасибо за вашу помощь.

Что я уже пробовал:

Я попытался передать дополнительный параметр через SendMessageW:
<DllImport("user32.dll", EntryPoint:="SendMessageW")> _
    Private Shared Function SendMessageW(ByVal hWnd As IntPtr, ByVal Msg As UInteger, ByVal wParam As UInteger, ByVal styleItalic As FontStyle, <MarshalAs(UnmanagedType.LPTStr)> ByVal lParam As String) As Integer
    End Function

    SendMessageW(CBSearch.Handle, CB_SETCUEBANNER, 0, FontStyle.Italic, "Search...")

0 Ответов