Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 有没有办法强制显示工具提示?_C#_Winforms_Validation_Tooltip - Fatal编程技术网

C# 有没有办法强制显示工具提示?

C# 有没有办法强制显示工具提示?,c#,winforms,validation,tooltip,C#,Winforms,Validation,Tooltip,我有一个验证字段的方法。如果无法验证,该字段将被清除并标记为红色 我还希望在框上方弹出一个工具提示,提示用户该值无效。有没有办法做到这一点,或者控制工具提示显示的时间?如何让它自己弹出,而不是鼠标悬停?您有一个例子。使用工具提示的属性,工具提示将根据您的需要显示 工具提示上显示了该方法 注意:.net 2.0版本这是winforms应用程序吗…如果是的话 如果是ASP.NET web应用程序…您可以添加一个名为的字段,请尝试以下操作: 基本上 private void button1_Click

我有一个验证字段的方法。如果无法验证,该字段将被清除并标记为红色

我还希望在框上方弹出一个工具提示,提示用户该值无效。有没有办法做到这一点,或者控制工具提示显示的时间?如何让它自己弹出,而不是鼠标悬停?

您有一个例子。使用工具提示的属性,工具提示将根据您的需要显示

工具提示上显示了该方法


注意:.net 2.0版本

这是winforms应用程序吗…如果是的话

如果是ASP.NET web应用程序…您可以添加一个名为

的字段,请尝试以下操作:
基本上

private void button1_Click(object sender, EventArgs e)
{
    ToolTip toolTip1 = new ToolTip();
    toolTip1.Title = "Invalid entry"; // Title to display.
    toolTip1.Show("Please enter a number.", textBox1); // Message of the toolTip and to what control to appear.
}
但是工具提示还有其他5个重载。您可以看到它

“如果该字段无法验证,我会让它清除框并将其标记为红色。我还希望它在框上方弹出一个工具提示,说明该值无效。” 从您想要的行为的描述来看,组件比工具提示更适合您。
ErrorProvider
组件将自动在验证失败的控件旁边放置一个您指定的图标,并向用户显示一个工具提示,说明验证错误和/或他们需要采取的纠正步骤:

上提供了一个示例,但实现起来非常简单。只需将
ErrorProvider
组件添加到表单中(默认情况下工具箱中提供该组件),然后在验证方法中编写以下代码:

private void ValidateName()
{
 if (string.IsNullOrEmpty(NameTextBox.Text))
    {
            //Validation failed, so set an appropriate error message
            errorProvider.SetError(NameTextBox, "You must enter your name");
    }
    else
    {
            //Clear previous error message
            errorProvider.SetError(NameTextBox, string.Empty);
    }
}

WinForms?WPF?还有什么?你想让弹出窗口出现在哪里?鼠标悬停时会显示工具提示…如果您希望它始终显示在屏幕上,则可能希望屏幕上显示另一个元素。因为你还需要在屏幕上设置它的位置。我只想让它弹出到它的正常位置,就在控件旁边。弹出并显示几秒钟,这样我就可以设置属性了。但我不知道如何让它自动显示,而不仅仅是鼠标悬停