Fix bugs in sizing TableLayoutPanel (Xamarin bug 18638)
[mono.git] / mcs / class / System.ComponentModel.Composition / src / ComponentModel / System / ComponentModel / Composition / ReflectionModel / ReflectionMember.cs
1 // -----------------------------------------------------------------------\r
2 // Copyright (c) Microsoft Corporation.  All rights reserved.\r
3 // -----------------------------------------------------------------------\r
4 using System;\r
5 using System.Reflection;\r
6 using Microsoft.Internal;\r
7 using System.Threading;\r
8 \r
9 namespace System.ComponentModel.Composition.ReflectionModel\r
10 {\r
11     internal abstract class ReflectionMember : ReflectionItem\r
12     {\r
13         public abstract bool CanRead\r
14         {\r
15             get;\r
16         }\r
17         \r
18         public Type DeclaringType\r
19         {\r
20             get { return this.UnderlyingMember.DeclaringType; }\r
21         }\r
22 \r
23         public override string Name\r
24         {\r
25             get { return this.UnderlyingMember.Name; }\r
26         }\r
27 \r
28         public override string GetDisplayName()\r
29         {\r
30             return this.UnderlyingMember.GetDisplayName();\r
31         }\r
32 \r
33         public abstract bool RequiresInstance\r
34         {\r
35             get;\r
36         }\r
37 \r
38         public abstract MemberInfo UnderlyingMember { get; }\r
39 \r
40         public abstract object GetValue(object instance);\r
41     }\r
42 }\r