public override void ViewWillAppear(bool animated)
        {
            base.ViewWillAppear(animated);

            _viewModel.Refresh();

            _bindings.Bind(
                () => _viewModel.Name,
                value => this.Title = value);

            _bindings.BindItems(
                TableView,
                () => _viewModel.Forecasts,
                (cell, forecast, bindings) =>
            {
                bindings.BindText(
                    cell.TextLabel,
                    () => forecast.Text);
                if (cell.DetailTextLabel != null)
                {
                    bindings.BindText(
                        cell.DetailTextLabel,
                        () => forecast.Description);
                }
            });
        }
示例#2
0
        protected override void OnCreate(Bundle bundle)
        {
            base.OnCreate(bundle);

            SetContentView(Resource.Layout.Detail);

            _bindings.Initialize(this);
            ViewModelLocator.Initialize(
                Resources.GetString(Resource.String.MashapeKey),
                new AndroidStorageService());

            _viewModel = ViewModelLocator.Instance.City;

            _bindings.BindText(
                FindViewById <TextView>(Resource.Id.cityNameText),
                () => _viewModel.Name);
            _bindings.BindItems(
                FindViewById <ListView>(Resource.Id.forecastList),
                () => _viewModel.Forecasts,
                global::Android.Resource.Layout.SimpleListItem2,
                (row, forecast, bindings) =>
            {
                bindings.BindText(
                    row.FindViewById <TextView>(global::Android.Resource.Id.Text1),
                    () => forecast.Text);
                bindings.BindText(
                    row.FindViewById <TextView>(global::Android.Resource.Id.Text2),
                    () => forecast.Description);
            });

            _viewModel.Refresh();
        }