0
나는 Watermark TextBox in WinForms의 코드를 발견하지만 C# 버전, 그래서워터 마크 TextBox를 만드는 방법은 무엇입니까?
오류는이 라인에서 발생 ...... 나는 VB 버전에 코드를 변환하는 http://converter.telerik.com/를 사용하지만, 난 여전히 오류 얻을 : -
을sendMessage 첨부 (Me.Handle, & H1501, DirectCast (1, IntPtr입니다), mCue는)
나는 그것을 어떻게 해결할 수 있습니까?
오류 메시지 : BC30311 'Integer'유형의 값을 'IntPtr'로 변환 할 수 없습니다.
Imports System.ComponentModel
Imports System.Windows.Forms
Imports System.Runtime.InteropServices
Class CueTextBox
Inherits TextBox
<Localizable(True)> _
Public Property Cue() As String
Get
Return mCue
End Get
Set
mCue = value
updateCue()
End Set
End Property
Private Sub updateCue()
If Me.IsHandleCreated AndAlso mCue IsNot Nothing Then
SendMessage(Me.Handle, &H1501, DirectCast(1, IntPtr), mCue) 'this line get the error msg
End If
End Sub
Protected Overrides Sub OnHandleCreated(e As EventArgs)
MyBase.OnHandleCreated(e)
updateCue()
End Sub
Private mCue As String
' PInvoke
<DllImport("user32.dll", CharSet := CharSet.Unicode)> _
Private Shared Function SendMessage(hWnd As IntPtr, msg As Integer, wp As IntPtr, lp As String) As IntPtr
End Function
End Class
감사합니다. 문제가 해결되었습니다. – vbnewbie