Пример #1
0
        private void ComparisonListView_Click(object sender, EventArgs e)
        {
            ListViewHitTestInfo hitTest = ComparisonListView.HitTest(ComparisonListView.PointToClient(System.Windows.Forms.Control.MousePosition));

            if (hitTest.Location == ListViewHitTestLocations.StateImage)
            {
                ToggleItem(hitTest.Item);
            }
        }
        protected override async void InitBindings()
        {
            Bindings.Add(this.SetBinding(() => ViewModel.MyData).WhenSourceChanges(() =>
            {
                if (ViewModel.MyData == null)
                {
                    return;
                }

                MyName.Text = ViewModel.MyData.User.Name;
                MyImage.Into(ViewModel.MyData.User.ImgUrl, new CircleTransformation());
                MyMean.Text = ViewModel.MyData.AnimeMean.ToString("N2");
            }));

            Bindings.Add(this.SetBinding(() => ViewModel.OtherData).WhenSourceChanges(() =>
            {
                if (ViewModel.OtherData == null)
                {
                    return;
                }

                OtherName.Text = ViewModel.OtherData.User.Name;
                OtherImage.Into(ViewModel.OtherData.User.ImgUrl, new CircleTransformation());
                OtherMean.Text = ViewModel.OtherData.AnimeMean.ToString("N2");
            }));

            Bindings.Add(this.SetBinding(() => ViewModel.CurrentItems).WhenSourceChanges(() =>
            {
                ComparisonListView.ClearFlingAdapter();
                ComparisonListView.InjectFlingAdapter(ViewModel.CurrentItems, DataTemplateFull, DataTemplateFling,
                                                      ContainerTemplate, DataTemplateBasic);
            }));

            Bindings.Add(
                this.SetBinding(() => ViewModel.Loading,
                                () => ComparisonLoadingSpinner.Visibility).ConvertSourceToTarget(Converters.BoolToVisibility));

            Bindings.Add(
                this.SetBinding(() => ViewModel.EmptyNoticeVisibility,
                                () => ComparisonEmptyNotice.Visibility).ConvertSourceToTarget(Converters.BoolToVisibility));


            ComparisonPageActionButton.SetOnClickListener(new OnClickListener(view => _actionMenu.Open(true)));
            InitActionMenu();
        }