2012-01-30 50 views
1

爲什麼?.net自定義消息框文本突出顯示

我構建了一個簡單的自定義MessageBox作爲C#中的對話框。當我通過Show()顯示消息框時,消息文本不會突出顯示。當我顯示這個消息箱vi ShowDialog()時,文本突出顯示。

我不希望我的文本被突出顯示。任何想法或想法?

public partial class MyMessageBox : Form 
    { 
     private String mCaption; 
     private String mMessage; 


     public MyMessageBox(Form anOwner, String aCaption, String aMessage) 
     { 
      InitializeComponent(); 

      mCaption = aCaption; 
      Owner = anOwner; 
      mMessage = aMessage; 
     } 


     private void btnCancelRequest_Click(object sender, EventArgs e) 
     { 
      ((AddressForm)Owner).RequestCancelled(); 
     } 


     private void btnOk_Click(object sender, EventArgs e) 
     { 
      CloseDialog(); 
     } 


     public void CloseDialog() 
     { 
      Close(); 
     } 


     // Called from the Address Form 
     public void HideCancelRequestButton() 
     { 
      btnCancelRequest.Visible = false; 
     } 


     private void MyMessageBox_Activated(object sender, EventArgs e) 
     { 
      Text = mCaption; 
      txtMessage.Text = mMessage; 
     } 
    } 
+1

我從匈牙利符號猜測你的消息顯示在名爲txtMessage的TextBox控件中。爲什麼不用標籤替換它? – 2012-01-30 00:10:36

回答

2

雖然我不明白爲什麼文本將被突出顯示,你可以通過明確指定文本框中選擇長度避免這種情況:

txtMessage.SelectionLength = 0; 

雖然傑里米評論說,這可能是一個更好的使用一個標籤的除非你實際上期待用戶輸入。

+0

是的,這完美地回答了我的問題。但是,正如Jeremy和M. Babcock所說,我將從一個文本框切換到一個標籤。謝謝先生們。 – joe7pak 2012-01-30 02:42:09