MonoMobile.Views.MemberData.GetValue C# (CSharp) Method

GetValue() protected method

protected GetValue ( ) : object
return object
		protected virtual object GetValue()
		{
			Type targetType = null;

			if (Member != null && Source != null)
			{
				var view = Source as IDataContext<object>;
				if (view != null && view.DataContext != null)
				{
					DataContextSource = view.DataContext;
					DataContextMember = DataContextSource.GetType().GetMember(Member.Name).FirstOrDefault();
					
					if (DataContextMember != null)
					{
						targetType = Member.GetMemberType();
						var dataContextValue = DataContextMember.GetValue(DataContextSource);
						
						return Convert(dataContextValue, Type, ValueConverter);
					}
				}

				var value = Member.GetValue(Source);
				return value;
			}

			return ConvertValue(_Value, targetType);
		}