Fix bugs in sizing TableLayoutPanel (Xamarin bug 18638)
[mono.git] / mcs / class / System.ComponentModel.Composition / Tests / ComponentModelUnitTest / System / ComponentModel / Composition / Factories / ExportDefinitionFactory.DerivedExportDefinition.cs
1 // -----------------------------------------------------------------------\r
2 // Copyright (c) Microsoft Corporation.  All rights reserved.\r
3 // -----------------------------------------------------------------------\r
4 using System;\r
5 using System.Collections.Generic;\r
6 using System.ComponentModel.Composition;\r
7 using System.ComponentModel.Composition.Hosting;\r
8 using System.ComponentModel.Composition.Primitives;\r
9 \r
10 namespace System.ComponentModel.Composition.Factories\r
11 {\r
12     partial class ExportDefinitionFactory\r
13     {\r
14         private class DerivedExportDefinition : ExportDefinition, ICompositionElement\r
15         {\r
16             private readonly string _contractName;\r
17             private readonly IDictionary<string, object> _metadata;\r
18 \r
19             public DerivedExportDefinition(string contractName, IDictionary<string, object> metadata)\r
20             {\r
21                 _contractName = contractName;\r
22                 _metadata = metadata ?? new Dictionary<string, object>();\r
23             }\r
24 \r
25             public override string ContractName\r
26             {\r
27                 get { return _contractName; }\r
28             }\r
29 \r
30             public override IDictionary<string, object> Metadata\r
31             {\r
32                 get { return _metadata; }\r
33             }\r
34 \r
35             public string DisplayName\r
36             {\r
37                 get { return base.ToString(); }\r
38             }\r
39 \r
40             public ICompositionElement Origin\r
41             {\r
42                 get { return null; }\r
43             }\r
44         }\r
45     }\r
46 }\r