예제 #1
0
        protected virtual void InitializeReadOnlyModeBinding()
        {
            List <Control> controlList = ViewHelpers.GetAllControls(this);

            foreach (Control control in controlList)
            {
                //if (control is TextBox) control.DataBindings.Add("Readonly", this, "ReadonlyMode");
                if (control is TextBox)
                {
                    control.DataBindings.Add("Enabled", this, "EditableMode");
                }
                else if (control is ComboBox || control is DateTimePicker)
                {
                    control.DataBindings.Add("Enabled", this, "EditableMode");
                }
                else if (control is DataGridView)
                {
                    control.DataBindings.Add("Readonly", this, "ReadonlyMode");
                    control.DataBindings.Add("AllowUserToAddRows", this, "EditableMode");
                    control.DataBindings.Add("AllowUserToDeleteRows", this, "EditableMode");
                }
            }

            //this.FastObjectListView.DataBindings.Add("Enabled", this, "ReadonlyMode");
        }
예제 #2
0
        protected virtual void InitializeReadOnlyModeBinding()
        {
            List <Control> controlList = ViewHelpers.GetAllControls(this);

            foreach (Control control in controlList)
            {
                IControlExtension controlExtension = control as IControlExtension;
                if (controlExtension != null)
                {
                    if (controlExtension.Editable)
                    {
                        control.DataBindings.Add("ReadOnly", this, "ReadonlyMode");
                    }
                    else
                    {
                        controlExtension.ReadOnly = true;
                    }

                    if (control is DataGridexView)
                    {
                        DataGridexView dataGridexView = control as DataGridexView;
                        if (dataGridexView != null && dataGridexView.AllowAddRow)
                        {
                            control.DataBindings.Add("AllowUserToAddRows", this, "EditableMode");
                        }
                        else
                        {
                            ((DataGridView)control).AllowUserToAddRows = false;
                        }

                        if (dataGridexView != null && dataGridexView.AllowDeleteRow)
                        {
                            control.DataBindings.Add("AllowUserToDeleteRows", this, "EditableMode");
                        }
                        else
                        {
                            ((DataGridView)control).AllowUserToDeleteRows = false;
                        }
                    }
                }
                else
                if (control is CheckBox)
                {
                    control.DataBindings.Add("Enabled", this, "EditableMode");
                }
            }

            //this.fastListIndex.DataBindings.Add("Enabled", this, "ReadonlyMode"); //HERE: WE DON'T LOCK fastListIndex.Enabled TO ReadonlyMode, INSTEAD: WE HANDLE fastListIndex.MouseClick AND fastListIndex.KeyDown TO KEEP THE CURRENT ROW OF fastListIndex WHEN EditableMode
        }