如何在 vb.net 中插入只读 属性 的值?

How in vb.net can I insert a value on a read only property?

我想使用 属性 r,g,b 创建颜色,但不幸的是 Visual Studio 说 r 是只读值。请帮忙。

Dim newcolor As Color
newcolor.R = vermelho
newcolor.G = verde
newcolor.B = azul

嗯,R、G 和 B 肯定是只读的,因为它们只有 GET 方法。我通常使用这样的颜色:

Dim Color As System.Drawing.Color

Color = Color.LightSteelBlue
Color = Color.SteelBlue

您还可以这样做:

Dim ColorCode As Integer
ColorCode = Color.SteelBlue.ToArgb

祝你好运!

如果这是 System.Drawing.Color 结构,则不能。

如果您查看 Color.Rreference source,您会发现没有可供您设置的支持字段。当然,除非您操纵 Value,但您也可以在每次需要更新颜色时声明一个新颜色。

public byte R 
{
    get 
    {
        return(byte)((Value >> ARGBRedShift) & 0xFF);
    }
}

您必须使用共享方法 FromArgb

Dim red As Color = Color.FromArgb(255, 0, 0)

或者你的情况

Dim newcolor As Color = Color.FromArgb(vermelho, verde, azul)