C# 在类中实现System.Windows.Forms.Label时出现问题

C# 在类中实现System.Windows.Forms.Label时出现问题,c#,class,label,sharpdevelop,C#,Class,Label,Sharpdevelop,在我的C#代码中,我在类中实现System.Windows.Forms.Label时遇到了问题。我正在尝试实现一个带有透明背景的标签,这样我就可以把它放在一个透明窗口上,使其具有“浮动”文本。 这是我的密码: 72| public class floatingText : System.Windows.Forms.Label 73| { 74| this.Text = "Words go here"; 75| this.TextAlign = System

在我的C#代码中,我在类中实现
System.Windows.Forms.Label
时遇到了问题。我正在尝试实现一个带有透明背景的标签,这样我就可以把它放在一个透明窗口上,使其具有“浮动”文本。

这是我的密码:

72|    public class floatingText : System.Windows.Forms.Label
73|    {
74|        this.Text = "Words go here";
75|        this.TextAlign = System.Drawing.ContentAlignment.TopCenter;
76|        this.ForeColor = Color.WhiteSmoke;
77|        this.BackColor = Color.Black;
78|        this.TransparencyKey = Color.Black;
79|    }
此代码给出了以下编译错误:

74|    Invalid token '=' in class, struct, or interface member declaration (CS1519)
74|    Invalid token 'this' in class, struct, or interface member declaration (CS1519)
75|    Invalid token ';' in class, struct, or interface member declaration (CS1519)
75|    Invalid token '=' in class, struct, or interface member declaration (CS1519)
76|    Invalid token ';' in class, struct, or interface member declaration (CS1519)
76|    Invalid token '=' in class, struct, or interface member declaration (CS1519)
77|    Invalid token ';' in class, struct, or interface member declaration (CS1519)
77|    Invalid token '=' in class, struct, or interface member declaration (CS1519)
78|    Invalid token ';' in class, struct, or interface member declaration (CS1519)
78|    Invalid token '=' in class, struct, or interface member declaration (CS1519)

我是C#的新手,完全不知道这里发生了什么,所以如果你能简单地解释一下,我将不胜感激。
我使用的是SharpDevelop 4.3.3,运行的是Windows XP Professional,您不应该设置属性。您应该覆盖它们

例如,要覆盖
文本

public override string Text
{
    get
    {
        return "Words go here";
    }
    set
    {
        base.Text = value;
    }
}
对于
TextAlgin

public override System.Drawing.ContentAlignment TextAlign
{
    get
    {
        return System.Drawing.ContentAlignment.TopCenter;
    }
    set
    {
        base.TextAlign = value;
    }
}
等等。。。(如果不想更改,可以删除该集)


另一个解决方法是将这些语句放入类的构造函数中。

您不应该设置属性。您应该覆盖它们

例如,要覆盖
文本

public override string Text
{
    get
    {
        return "Words go here";
    }
    set
    {
        base.Text = value;
    }
}
对于
TextAlgin

public override System.Drawing.ContentAlignment TextAlign
{
    get
    {
        return System.Drawing.ContentAlignment.TopCenter;
    }
    set
    {
        base.TextAlign = value;
    }
}
等等。。。(如果不想更改,可以删除该集)


另一个解决方法是将这些语句放入类的构造函数中。

您不应该设置属性。您应该覆盖它们

例如,要覆盖
文本

public override string Text
{
    get
    {
        return "Words go here";
    }
    set
    {
        base.Text = value;
    }
}
对于
TextAlgin

public override System.Drawing.ContentAlignment TextAlign
{
    get
    {
        return System.Drawing.ContentAlignment.TopCenter;
    }
    set
    {
        base.TextAlign = value;
    }
}
等等。。。(如果不想更改,可以删除该集)


另一个解决方法是将这些语句放入类的构造函数中。

您不应该设置属性。您应该覆盖它们

例如,要覆盖
文本

public override string Text
{
    get
    {
        return "Words go here";
    }
    set
    {
        base.Text = value;
    }
}
对于
TextAlgin

public override System.Drawing.ContentAlignment TextAlign
{
    get
    {
        return System.Drawing.ContentAlignment.TopCenter;
    }
    set
    {
        base.TextAlign = value;
    }
}
等等。。。(如果不想更改,可以删除该集)


另一个解决方法是将这些语句放入类的构造函数中。

您可以在构造函数中设置如下属性:

public class floatingText : System.Windows.Forms.Label
{
    public floatingText()
    {
        this.Text = "Words go here";
        this.TextAlign = System.Drawing.ContentAlignment.TopCenter;
        this.ForeColor = Color.WhiteSmoke;
        this.BackColor = Color.Black;
        this.TransparencyKey = Color.Black;
    }
}

标签没有透明键,因此您可能需要更改最后一行,或者您是想在表单上设置它吗?

您可以在构造函数中这样设置属性:

public class floatingText : System.Windows.Forms.Label
{
    public floatingText()
    {
        this.Text = "Words go here";
        this.TextAlign = System.Drawing.ContentAlignment.TopCenter;
        this.ForeColor = Color.WhiteSmoke;
        this.BackColor = Color.Black;
        this.TransparencyKey = Color.Black;
    }
}

标签没有透明键,因此您可能需要更改最后一行,或者您是想在表单上设置它吗?

您可以在构造函数中这样设置属性:

public class floatingText : System.Windows.Forms.Label
{
    public floatingText()
    {
        this.Text = "Words go here";
        this.TextAlign = System.Drawing.ContentAlignment.TopCenter;
        this.ForeColor = Color.WhiteSmoke;
        this.BackColor = Color.Black;
        this.TransparencyKey = Color.Black;
    }
}

标签没有透明键,因此您可能需要更改最后一行,或者您是想在表单上设置它吗?

您可以在构造函数中这样设置属性:

public class floatingText : System.Windows.Forms.Label
{
    public floatingText()
    {
        this.Text = "Words go here";
        this.TextAlign = System.Drawing.ContentAlignment.TopCenter;
        this.ForeColor = Color.WhiteSmoke;
        this.BackColor = Color.Black;
        this.TransparencyKey = Color.Black;
    }
}

标签没有透明键,因此您可能想更改最后一行,或者您是想在表单上设置它吗?

@Levi只需删除引发错误的代码,并将其替换为覆盖属性此方法似乎有效,但覆盖透明键仍然有问题。我试图这样覆盖它:“public override System.Drawing.Color TransparencyKey{”。我不知道TransparencyKey属于哪个名称空间/类,但MSDN说它属于System.Drawing.Color()没关系,@StevieB刚刚指出,对于labels@Levi只需删除引发错误的代码,并将其替换为重写属性此方法似乎有效,但重写TransparencyKey时仍有问题。我正在尝试按如下方式重写它:“public override System.Drawing.Color TransparencyKey{”。我不知道TransparencyKey属于哪个命名空间/类,但MSDN说它属于System.Drawing.Color()没关系,@StevieB刚刚指出,对于labels@Levi只需删除引发错误的代码,并将其替换为重写属性此方法似乎有效,但重写TransparencyKey时仍有问题。我正在尝试这样重写它:”public override System.Drawing.Color TransparencyKey{”。我不知道TransparencyKey属于哪个命名空间/类,但MSDN说它属于System.Drawing.Color()没关系,@StevieB刚刚指出,对于labels@Levi只需删除引发错误的代码,并将其替换为重写属性此方法似乎有效,但重写TransparencyKey时仍有问题。我正在尝试这样重写它:”public override System.Drawing.Color TransparencyKey{”。我不知道TransparencyKey属于哪个命名空间/类,但MSDN说它属于System.Drawing.Color()没关系,@StevieB刚刚指出标签没有透明键属性谢谢你的建议,我只是在准备深入谷歌搜索。为我节省了一些时间;)谢谢你的建议,我只是在准备深入谷歌搜索。为我节省了一些时间;)谢谢你的建议,我只是在准备深入谷歌搜索。为我节省了一些时间;)谢谢你的建议,我只是在准备准备进行深入的谷歌搜索。为我节省了一些时间;)谢谢你的建议,我正准备进行深入的谷歌搜索。为我节省了一些时间;)