public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            prepareViews();
            prepareIndicatorView();

            this.Bind(CloseButton.Tapped(), ViewModel.CloseButtonTapped);
            this.Bind(FeedbackTextView.Text(), ViewModel.FeedbackText);
            this.Bind(ErrorView.Tapped(), ViewModel.ErrorViewTapped);

            this.Bind(SendButton.Tapped(), ViewModel.SendButtonTapped);
            SendButton.TouchUpInside += (sender, args) => { FeedbackTextView.ResignFirstResponder(); };

            this.Bind(ViewModel.IsFeedbackEmpty, FeedbackPlaceholderTextView.BindIsVisible());
            this.Bind(ViewModel.ErrorViewVisible, ErrorView.BindAnimatedIsVisible());
            this.Bind(ViewModel.SendEnabled, SendButton.BindEnabled());

            this.Bind(ViewModel.IsLoading.Invert(), SendButton.BindIsVisible());
            this.Bind(ViewModel.IsLoading, IndicatorView.BindIsVisible());
            this.Bind(ViewModel.IsLoading, UIApplication.SharedApplication.BindNetworkActivityIndicatorVisible());
        }