Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/332.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.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# Winforms工具提示获取并更改所有指定的工具提示_C#_Winforms_Tooltip - Fatal编程技术网

C# Winforms工具提示获取并更改所有指定的工具提示

C# Winforms工具提示获取并更改所有指定的工具提示,c#,winforms,tooltip,C#,Winforms,Tooltip,我在WinForms控件上循环,并将它们的文本和ToolTipText提供给翻译服务进行翻译。 例如: 但是,我无法访问使用WinForms ToolTip控件设置的工具提示 我知道我可以在部件上循环。我可以获取并设置他们的工具提示吗 protected void TranslateToolTip(ToolTip toolTip) { foreach (var component in toolTip.Container.Components) {

我在WinForms控件上循环,并将它们的文本和ToolTipText提供给翻译服务进行翻译。 例如:

但是,我无法访问使用WinForms ToolTip控件设置的工具提示

我知道我可以在部件上循环。我可以获取并设置他们的工具提示吗

    protected void TranslateToolTip(ToolTip toolTip)
    {
        foreach (var component in toolTip.Container.Components)
        { 
            // Doesn't work. No ToolTipText property
            component.ToolTipText = Translate(component.ToolTipText);
        }
    }

我可以直接从控件访问工具提示文本吗?

要在表单中的所有组件上设置工具提示文本,如
按钮1
等。我认为您应该使用以下内容:

foreach (var control in this.Controls) {
            ToolTip1.SetToolTip(this.control, "Your text");
        }
这是因为工具提示没有文本属性,它的设置与上面的示例类似

另见和

或者你可以尝试类似的方法,但不确定这是否可行:

protected void TranslateToolTip(ToolTip toolTip)
{
    foreach (var component in toolTip.Container.Components)
    { 
        // Doesn't work. No ToolTipText property
        // component.ToolTipText = Translate(component.ToolTipText);
           toolTip.SetToolTip(component , (string)Translate(toolTip.GetToolTip(component));
    }
}
我不知道Translate(component.ToolTipText)应该返回什么。如果它只是翻译的字符串,那么在我的示例中就不需要
(字符串)
部分

希望能有帮助


编辑:修复了第二个示例,演示如何从特定控件设置和获取工具提示文本。

这正是我需要的。我来测试一下,然后给你的答案打分<代码>工具提示.SetToolTip(组件,翻译(toolTip.GetToolTip(组件));
protected void TranslateToolTip(ToolTip toolTip)
{
    foreach (var component in toolTip.Container.Components)
    { 
        // Doesn't work. No ToolTipText property
        // component.ToolTipText = Translate(component.ToolTipText);
           toolTip.SetToolTip(component , (string)Translate(toolTip.GetToolTip(component));
    }
}