2012-01-30 43 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