2010-02-11 4 views
0

다음과 같이 TextBlock Text1, Text2, Text3을 Adddata() 함수에 추가합니다.TextBlock을 지우는 방법

if (i == 0) 
{ 
    Text1.Text = tagname.AlarmTag; 
} 
if (i == 1) 
{ 
    Text2.Text = tagname.AlarmTag; 
} 
if (i == 2) 
{ 
    Text3.Text = tagname.AlarmTag; 
} 

이제 deletedata()에서 3 개의 텍스트 블록으로 모든 내용을 지우고 싶습니다. 어떻게하면됩니까? 나는 Clear 옵션을 찾을 수 없기 때문에. 한 번에 3 개의 텍스트 블록 텍스트를 지우고 싶습니다.

답변

2

:

Text1.Text = String.Empty; 
Text2.Text = String.Empty; 
Text3.Text = String.Empty; 
+0

내가 할 수 없습니다. 그래서 내가 thta textblock에 null을 설정하면, mouseclick하면 null 문자열이 반환됩니다. – Anu

+0

NULL이 어디로 들어 옵니까? 빈 문자열을 표시하도록 컨트롤을 설정하기 만하면됩니다. – ZombieSheep

0

텍스트를 빈 문자열로 설정 하시겠습니까? "분명히"데이터에

2

당신은 빈 문자열로 텍스트 상자의 텍스트를 설정할 수 있습니다.

Text1.Text = ""; 
Text2.Text = ""; 
Text3.Text = ""; 

나만의 확장 방법을 정의 할 수도 있습니다.

public static class ControlExtensions 
{ 
    public static void Clear(this TextBox text) 
    { 
     text.Text = ""; 
    } 
} 

그런 다음, 당신이 당신의 확장 클래스를 정의 네임 스페이스의 using 지시자를 포함, 당신은 할 수있다 : 그 코딩 selectionchnaged 한 잘할

Text1.Clear(); 
Text2.Clear(); 
Text3.Clear(); 
+0

더 많은 설명을 해주십시오. 지시문을 포함시켜야합니다.이 모든 코딩을 메인 클래스에서만 수행해야합니다. (그냥 VC++을 C#로 옮겨서 많이 사용하는 등 몰라요.) 네임 스페이스 WpfApp { Window1.xaml /// 공공 부분 클래스 번째 윈도에 대한 ///

/// 상호 작용 논리 : 창 { } 내 모든 funcitons ... } – Anu

+1

나는 새 파일 (ControlExtensions을 만들 것입니다. cs) 그 내부 클래스와 함께. 이 새로운 파일'WpfApp.Extensions'의 네임 스페이스를 만드십시오. 원본 파일 (기본 클래스 포함)에서 맨 위에 'using WpfApp.Extensions;'를 추가하여 새 메소드를 활성화하십시오. – Sapph