2014-02-27 5 views
0

This answer은 텍스트 상자에 큐브 배너를 사용하는 방법을 보여줍니다. 레이블의 내용은 텍스트 상자마다 동일합니다. 그 대답에 대한 의견은 당신이 스타일 재사용 가능성을 높이기 위해 첨부 된 속성을 사용할 수 있으며 C# 코드에 대한 링크를 포함한다고 말합니다.WPF/VB.NET에서 다른 텍스트로 다른 텍스트 상자에서이 스타일을 사용하는 방법

저는 C#을 쓰거나 읽을 수 있지만 유감스럽게도 코드가하는 일을 이해하지 못합니다. 첨부 된 속성에 대한 검색도 수행했지만 실제로 표시된 텍스트를 어떻게 재사용 할 수 있도록 변경할 수는 없습니다.

VB.NET에서이 작업을 수행하는 방법을 설명하거나 사이트 구축 방법을 설명하는 사이트 링크를 누군가에게 제공 할 수 있습니까?

수입 :

+0

, 당신은 * 워터 마크'TextBox' * ... 그리고 당신은 그들이에 찾을 수있는 이러한를 만드는 여러 가지 방법이 있습니다 후 것 같다 [WPF의 워터 마크/힌트 텍스트 TextBox] (http://stackoverflow.com/questions/833943/watermark-hint-text-textbox-in-wpf) 질문 ... 나는 당신이 적어도 그것을 발견 할 것이라고 믿습니다. 귀하의 제안 된 솔루션 (연결된 질문에서)보다 나은 솔루션입니다. VB에서 원한다면 온라인 VB에서 C# 변환기 (예 : Developer Fusion) (http://www.developerfusion.com/tools/convert/csharp-to-vb/)로 변환하면됩니다. – Sheridan

+0

링크 주셔서 감사합니다. 나는 성공할 지 안했는지 확실히 알기를 바랍니다. – Krowi

+0

실패 할 수 없음 ... 가장 먼저 투표 한 답을 먼저 시도하십시오. 비슷한 방법을 사용하면 효과가 좋습니다. 나는 이것을 다음과 같이 사용할 수 있습니다 :'TextBox Text = "{Binding Text}"첨부 : TextBoxProperties.Label = "Search"/>' – Sheridan

답변

0

이것은 당신의 텍스트 상자 컨트롤에 텍스트를 워터 마크 줄 것이다

Imports System.Runtime.InteropServices 

글로벌 선언 메인 클래스 : 메인 클래스

Private Const EM_SETCUEBANNER As Integer = &H1501 

<DllImport("user32.dll", CharSet:=CharSet.Auto)> _ 
Private Shared Function SendMessage(ByVal hWnd As IntPtr, ByVal msg As Integer, ByVal wParam As Integer, <MarshalAs(UnmanagedType.LPWStr)> ByVal lParam As String) As Int32 
End Function 

기능 :

Private Sub SetCueText(ByVal control As Control, ByVal text As String) 
SendMessage(control.Handle, EM_SETCUEBANNER, 0, text) 
End Sub 

사용법 (일반적으로 form_load 이벤트에서) :

SetCueText(TextBox1, "blah") 
SetCueText(TextBox2, "blahblah") 

이것은 무엇을 의미합니까?

희망이 도움이 :)

다른 질문에 명시된 바와 같이