summaryrefslogtreecommitdiff
path: root/Xamarin.Forms.Core
diff options
context:
space:
mode:
authorJason Smith <jason.smith@xamarin.com>2016-04-18 10:21:53 -0700
committerJason Smith <jason.smith@xamarin.com>2016-04-18 10:55:02 -0700
commit8f5c5e4e06b1ec5b781a6c20d75a67c8d82234f2 (patch)
tree72f186aa1fb4a601566399b4556c10f8407d88e1 /Xamarin.Forms.Core
parent75f112400223ea628ee008d311b7d5d54d98eafe (diff)
downloadxamarin-forms-8f5c5e4e06b1ec5b781a6c20d75a67c8d82234f2.tar.gz
xamarin-forms-8f5c5e4e06b1ec5b781a6c20d75a67c8d82234f2.tar.bz2
xamarin-forms-8f5c5e4e06b1ec5b781a6c20d75a67c8d82234f2.zip
Make sure RD indexer works with merged dictionary
Diffstat (limited to 'Xamarin.Forms.Core')
-rw-r--r--Xamarin.Forms.Core/ResourceDictionary.cs9
1 files changed, 8 insertions, 1 deletions
diff --git a/Xamarin.Forms.Core/ResourceDictionary.cs b/Xamarin.Forms.Core/ResourceDictionary.cs
index bff6127b..791c6e5d 100644
--- a/Xamarin.Forms.Core/ResourceDictionary.cs
+++ b/Xamarin.Forms.Core/ResourceDictionary.cs
@@ -92,7 +92,14 @@ namespace Xamarin.Forms
[IndexerName("Item")]
public object this[string index]
{
- get { return _innerDictionary[index]; }
+ get
+ {
+ if (_innerDictionary.ContainsKey(index))
+ return _innerDictionary[index];
+ if (_mergedInstance != null && _mergedInstance.ContainsKey(index))
+ return _mergedInstance[index];
+ throw new KeyNotFoundException();
+ }
set
{
_innerDictionary[index] = value;