Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/283.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# Windows Mobile:如何隐藏自定义控件的大小属性_C#_Windows Mobile_Custom Controls - Fatal编程技术网

C# Windows Mobile:如何隐藏自定义控件的大小属性

C# Windows Mobile:如何隐藏自定义控件的大小属性,c#,windows-mobile,custom-controls,C#,Windows Mobile,Custom Controls,我正在用C#和.Net Compact Framework 2.0 SP2开发一个Windows Mobile WinForm应用程序 我有一个从System.Windows.Form.control继承的控件,我想将该控件设置为私有大小属性。我该怎么做 我试过这个: new private Size; 但它没有编译 有什么想法吗?这会奏效: new private Size Size { get { return Size; } set { S

我正在用C#和.Net Compact Framework 2.0 SP2开发一个Windows Mobile WinForm应用程序

我有一个从System.Windows.Form.control继承的控件,我想将该控件设置为私有大小属性。我该怎么做

我试过这个:

new private Size;
但它没有编译

有什么想法吗?

这会奏效:

    new private Size Size
    {
        get { return Size; }
        set { Size = value; }
    }
但是,不建议隐藏Size属性。您基本上违反了控件的约定,当其他类尝试与它交互时,您可能会遇到运行时异常。

这将起作用:

    new private Size Size
    {
        get { return Size; }
        set { Size = value; }
    }

但是,不建议隐藏Size属性。您基本上违反了控件的约定,当其他类尝试与它交互时,您可能会遇到运行时异常。

只需在您的控件中创建一个具有相同名称大小的公共属性:

public Size Size
{
    get { return base.Size; }
    set { base.Size = value; }
}

然后,您可以在setter中执行一些操作,以防止控件大小更改为与图像不匹配的大小。

只需在控件中创建一个具有相同名称大小的公共属性:

public Size Size
{
    get { return base.Size; }
    set { base.Size = value; }
}

然后,您可以在setter中执行一些操作,以防止控件大小更改为与图像不匹配的大小。

也许对属性的set部分执行private操作可以解决您暴露的问题。我的控件包含一个图像,我希望该控件具有与图像相同的大小,并且任何控件都不能更改其大小。也许对属性的设置部分进行私有化可以解决您暴露的问题。我的控件包含一个图像,我希望该控件具有与图像相同的大小,并且没有人可以更改其大小。