2012-08-08 3 views
0

저는 C#을 처음 접했을 때 매우 익숙했으며 Winforms를 사용하여 연구를 진행하는 과정에 있습니다. 아래 코드는 작업을 수행하지 않습니다. richComResults (richTextBox)가 비어있을 때 messageBox를 표시하고 "아무 것도 지울 필요가 없습니다!"라고 말하면서 그것을 말하지 않지만 Yes/No 대화 상자를 보여줍니다.Warning Messagebox를 제공 할 때 명세서가 잘 작동하지 않는 경우

제 실수를 지적 할만큼 친절하십니까? 귀하의 의견은 매우 높이 평가 될 것입니다. 고맙습니다.

private void btnComClearAll_Click(object sender, EventArgs e) 
    { 
     if (richComResults == null) 
     { 
      MessageBox.Show("There is nothing to be cleared!"); 
     } 
     if (richComResults != null) 
     { 
      DialogResult dialogResult = MessageBox.Show("Are you sure you want to clear the results?", "Warning", MessageBoxButtons.YesNo); 
      if (dialogResult == DialogResult.Yes) 
      { 
       richComResults.Clear(); 
      } 
      else if (dialogResult == DialogResult.No) 
      { 
      } 
     } 
    } 
+0

, 당신은 richComResults.Text을 확인하려면 : 당신은 어쨌든 두 경우 모두를 테스트 할 string.IsNullOrEmpty를 사용할 수 있습니다. –

+0

Text 속성이없는 RichTextBox를 사용하는 경우 다음이 도움이 될 수 있습니다. http://stackoverflow.com/questions/957441/richtextbox-wpf-does-not-have-string-property-text –

+0

'null'은'String.Empty' 나''''와 다릅니다. 'null'은 값이 없다는 것을 의미하고'' "는 문자열 값이 비어 있음을 의미합니다. –

답변

4

richComResultsRichTextBox 컨트롤입니다, 그래서 당신은 무엇을 확인해야하는 것은 그 Text 호텔입니다 ... 아마 널 (null)이 아니다. 아마 null도 아니지만 비어있을 수 있습니다 (빈 문자열이 null과 같지 않음을 명심하십시오). 를 RichTextBox가 비어 있는지 확인하는

if (string.IsNullOrEmpty(richComResults.Text)) 
    { 
     MessageBox.Show("There is nothing to be cleared!"); 
    } 
    else 
    { 
     ... 
    } 
+0

정말 고마워요! :디 – Shyuan

0

또 다른 방법 여부를 당신은 richComResults을 확인하지 않으

if (richComResults.Text== "") 
      { 
       MessageBox.Show("rich text box is empty"); 

      } 
      else 
      { 
       MessageBox.Show("rich text box is not empty"); 
      } 
관련 문제