예제 #1
0
        public void SetContainerCanvasBindings(SetBindingMode bindingMode)
        {
            Canvas containerCanvas = this.sContainer;

            switch (bindingMode)
            {
            case SetBindingMode.SetBinding:
                Binding bindWinH = new Binding("ActualHeight");
                bindWinH.Source = this;
                Binding bindWinW = new Binding("ActualWidth");
                bindWinW.Source = this;

                containerCanvas.SetBinding(Canvas.HeightProperty, bindWinH);
                containerCanvas.SetBinding(Canvas.WidthProperty, bindWinW);

                if (this.MyWindowState != WindowState.Minimized)
                {
                    this.ResizeMode = ResizeMode.CanResizeWithGrip;
                }
                break;

            case SetBindingMode.ClearBinding:
                containerCanvas.Height = this.ActualHeight;
                containerCanvas.Width  = this.ActualWidth;

                BindingOperations.ClearBinding(containerCanvas, Canvas.HeightProperty);
                BindingOperations.ClearBinding(containerCanvas, Canvas.WidthProperty);

                this.ResizeMode = ResizeMode.NoResize;
                break;
            }
        }
예제 #2
0
        internal void SetContextCircleMouseEventBindings(SetBindingMode BindingMode)
        {
            switch (BindingMode)
            {
            case SetBindingMode.SetBinding:
                this.sContextCircle.MouseEnter += new MouseEventHandler(sContextCircle_MouseEnter);
                this.sContextCircle.MouseLeave += new MouseEventHandler(sContextCircle_MouseLeave);
                break;

            case SetBindingMode.ClearBinding:
                this.sContextCircle.RemoveHandler(Border.MouseEnterEvent, new MouseEventHandler(sContextCircle_MouseEnter));
                this.sContextCircle.RemoveHandler(Border.MouseLeaveEvent, new MouseEventHandler(sContextCircle_MouseLeave));
                break;
            }
        }
예제 #3
0
        public void ItemTextBindingShouldWorkRegardlessOfOrder(SetBindingMode mode)
        {
            ManualForm("Should show 'Item x' for each item", form =>
            {
                var dropDown = new T();
                if (dropDown is ListBox)
                {
                    dropDown.Size = new Size(150, 200);
                }

                var binding = Binding.Delegate((string d) => "Item " + d);
                if (mode == SetBindingMode.Before)
                {
                    dropDown.ItemTextBinding = binding;
                }
                dropDown.DataStore     = new[] { "1", "2", "3" };
                dropDown.SelectedIndex = 0;
                if (mode == SetBindingMode.After)
                {
                    dropDown.ItemTextBinding = binding;
                }

                if (mode == SetBindingMode.Async)
                {
                    var updateBindingButton = new Button {
                        Text = "Update ItemTextBinding"
                    };
                    updateBindingButton.Click += (sender, e) => dropDown.ItemTextBinding = binding;

                    return(new StackLayout
                    {
                        Spacing = 4,
                        Items = { new StackLayoutItem(dropDown, true), updateBindingButton }
                    });
                }
                else
                {
                    return(dropDown);
                }
            });
        }
예제 #4
0
        internal void SetContextCircleMouseEventBindings(SetBindingMode BindingMode)
        {
            switch (BindingMode)
            {
                case SetBindingMode.SetBinding:
                    this.sContextCircle.MouseEnter += new MouseEventHandler(sContextCircle_MouseEnter);
                    this.sContextCircle.MouseLeave += new MouseEventHandler(sContextCircle_MouseLeave);
                    break;

                case SetBindingMode.ClearBinding:
                    this.sContextCircle.RemoveHandler(Border.MouseEnterEvent, new MouseEventHandler(sContextCircle_MouseEnter));
                    this.sContextCircle.RemoveHandler(Border.MouseLeaveEvent, new MouseEventHandler(sContextCircle_MouseLeave));
                    break;
            }
        }
예제 #5
0
        public void SetContainerCanvasBindings(SetBindingMode bindingMode)
        {
            Canvas containerCanvas = this.sContainer;

            switch (bindingMode)
            {
                case SetBindingMode.SetBinding:
                    Binding bindWinH = new Binding("ActualHeight");
                    bindWinH.Source = this;
                    Binding bindWinW = new Binding("ActualWidth");
                    bindWinW.Source = this;

                    containerCanvas.SetBinding(Canvas.HeightProperty, bindWinH);
                    containerCanvas.SetBinding(Canvas.WidthProperty, bindWinW);

                    if (this.MyWindowState != WindowState.Minimized)
                    {
                        this.ResizeMode = ResizeMode.CanResizeWithGrip;
                    }
                    break;

                case SetBindingMode.ClearBinding:
                    containerCanvas.Height = this.ActualHeight;
                    containerCanvas.Width = this.ActualWidth;

                    BindingOperations.ClearBinding(containerCanvas, Canvas.HeightProperty);
                    BindingOperations.ClearBinding(containerCanvas, Canvas.WidthProperty);

                    this.ResizeMode = ResizeMode.NoResize;
                    break;
            }
        }