private StackLayout ErrorLayout()
        {
            var errorLabel = new AxiosLocalizedLabel()
            {
                BindingContext    = this,
                FontSize          = ErrorFontSize,
                TextColor         = ErrorFontColor,
                VerticalOptions   = LayoutOptions.StartAndExpand,
                HorizontalOptions = LayoutOptions.EndAndExpand,
            };

            errorLabel.SetBinding(AxiosLocalizedLabel.LabelTextKeyProperty, nameof(ErrorMessage));
            errorLabel.SetBinding(AxiosLocalizedLabel.IsVisibleProperty, nameof(ErrorMessage), converter: new HasDataBoolConverter());
            errorLabel.SetBinding(AxiosLocalizedLabel.HeightRequestProperty, nameof(ErrorMessage), converter: new HasDataHeightRequestConverter());

            var stackLayout = new StackLayout()
            {
                Orientation = StackOrientation.Vertical,
                Children    = { errorLabel }
            };

            stackLayout.SetBinding(StackLayout.HeightRequestProperty, nameof(ErrorMessage), converter: new HasDataHeightRequestConverter());

            return(stackLayout);
        }
        private AxiosLocalizedLabel LocalizedLabel()
        {
            var label = new AxiosLocalizedLabel()
            {
                BindingContext    = this,
                FontSize          = FontSize,
                TextColor         = FontColor,
                VerticalOptions   = LayoutOptions.CenterAndExpand,
                HorizontalOptions = LayoutOptions.Start
            };

            label.SetBinding(AxiosLocalizedLabel.LabelSourceTypeProperty, nameof(LabelSourceType));
            label.SetBinding(AxiosLocalizedLabel.LabelSourceProperty, nameof(LabelSource));

            return(label);
        }