ErrorProvider不显示错误消息

时间:2018-10-06 00:57:05

标签: c# winforms errorprovider

  1. 在下面的代码中,我使用errorProvider.SetError(control, message)来显示消息,但是仅显示Icon,但未显示该消息,这是怎么回事?
  2. 是否可以仅调整错误消息的左边距? (我知道您可以SetIconPadding,但我只希望更改左边距)

    public static DialogResult ShowDialog()
    {
      var inputBox = new Form { ClientSize = new Size(520, 225), FormBorderStyle = FormBorderStyle.FixedDialog };        
      var panel = new TableLayoutPanel { Size = new Size(460, 100), Location = new System.Drawing.Point(45, 15) };        
      var errorProvider = new ErrorProvider { Icon = SystemIcons.Exclamation, BlinkStyle = ErrorBlinkStyle.NeverBlink };        
      errorProvider.SetIconAlignment(panel, ErrorIconAlignment.BottomLeft);
    
      var okButton = new Button
      {
        Size = new System.Drawing.Size(70, 30),
        Location = new Point(330, 180),
        Text = "OK"
      };
    
      okButton.Click += new EventHandler((sender, e) => { errorProvider.SetError(panel, "Test Error"); });
      inputBox.Controls.Add(panel);
      inputBox.Controls.Add(okButton);
    
      return inputBox.ShowDialog();
    }
    

1 个答案:

答案 0 :(得分:1)

让我解释一下ErrorProvider。

    Windows应用程序中的
  1. ErrorProvider具有以下行为。

    • 它将根据配置显示错误图标。
    • 一旦将鼠标光标放在上面,它就会显示您已设置的错误消息。
  2. 您想要的行为也是与图标一起显示错误消息。

    • 有一个解决方案可以像ErrorProvider一样构建自己的控件。