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

            var input = new InputElement("Keyword", string.Empty, string.Empty);

            input.Changed               += (sender, e) => ViewModel.Keyword = input.Value;
            input.AutocorrectionType     = MonoTouch.UIKit.UITextAutocorrectionType.No;
            input.AutocapitalizationType = MonoTouch.UIKit.UITextAutocapitalizationType.None;
            input.TextAlignment          = MonoTouch.UIKit.UITextAlignment.Right;

            NavigationItem.RightBarButtonItem = new MonoTouch.UIKit.UIBarButtonItem(MonoTouch.UIKit.UIBarButtonSystemItem.Done, (s, e) =>
            {
                input.ResignFirstResponder(false);
                ViewModel.DoneCommand.ExecuteIfCan();
            });

            var showLanguage = new StyledStringElement("Language", string.Empty, MonoTouch.UIKit.UITableViewCellStyle.Value1);

            showLanguage.Tapped += () =>
            {
                input.ResignFirstResponder(false);
                ViewModel.GoToLanguagesCommand.ExecuteIfCan();
            };
            showLanguage.Accessory = MonoTouch.UIKit.UITableViewCellAccessory.DisclosureIndicator;

            var sec2 = new Section("Add New Interest")
            {
                showLanguage, input
            };
            var sec3 = new Section("Popular Interests");

            Root.Reset(sec2, sec3);

            ViewModel.WhenAnyValue(x => x.PopularInterests).Subscribe(_ => sec3.Reset(ViewModel.PopularInterests.OrderBy(x => x.Keyword).Select(p =>
            {
                var item       = new StyledStringElement(p.Keyword, p.Language.Name, MonoTouch.UIKit.UITableViewCellStyle.Subtitle);
                item.Accessory = MonoTouch.UIKit.UITableViewCellAccessory.DisclosureIndicator;
                item.Tapped   += () =>
                {
                    ViewModel.Keyword          = p.Keyword;
                    ViewModel.SelectedLanguage = p.Language;
                    ViewModel.DoneCommand.ExecuteIfCan();
                };
                return(item);
            })));

            ViewModel.WhenAnyValue(x => x.SelectedLanguage).Subscribe(x =>
            {
                showLanguage.Value = x == null ? string.Empty : x.Name;
                Root.Reload(showLanguage, MonoTouch.UIKit.UITableViewRowAnimation.None);
            });
        }