Пример #1
0
                /// <summary>
                /// Инициализировать (создать, разместить) подчиненные(дочерние) элементы управления
                /// </summary>
                private void InitializeComponents()
                {
                    Control ctrl   = null;
                    int     posRow = -1;

                    posRow = _panelParent.IndexLastRowControl;
                    //
                    //Признаки включения/исключения для отображения блока(ТГ)
                    ctrl                 = new Label();
                    ctrl.Dock            = DockStyle.Bottom;
                    (ctrl as Label).Text = @"Выбрать блок для отображения:";
                    _panelParent.Controls.Add(ctrl, 0, posRow);
                    _panelParent.SetColumnSpan(ctrl, _panelParent.ColumnCount);
                    // --------------------------------------------------------
                    //
                    // --------------------------------------------------------
                    posRow = _panelParent.IndexLastRowControl;
                    //Подпись + CheckListBox для вызова/снятия с отображения групп столбцов в представлении
                    //  эти 2 элемента требуют перемещения при добавлении RadioButton-блоков
                    //
                    //Подпись для списка признаков включения/исключения для отображения столбца(ов)
                    ctrl                 = new Label();
                    ctrl.Dock            = DockStyle.Bottom;
                    (ctrl as Label).Text = @"Включить/исключить столбцы для отображения:";
                    _panelParent.Controls.Add(ctrl, 0, posRow);
                    _panelParent.SetColumnSpan(ctrl, _panelParent.ColumnCount);
                    //
                    //Список признаков включения/исключения для отображения столбца(ов)
                    ctrl =
                        m_clbGroupHeaderCheckStates =
                            new CheckedListBoxGroupHeaders();
                    //ctrl = Activator.CreateInstance <CheckedListBoxGroupHeaders>();
                    ctrl.Name = INDEX_CONTROL.CLBX_GROUPHEADER_VISIBLED.ToString();
                    _panelParent.Controls.Add(ctrl, 0, posRow = posRow + 1);
                    _panelParent.SetColumnSpan(ctrl, _panelParent.ColumnCount);
                    _panelParent.SetRowSpan(ctrl, 4);
                    //
                    //Признак Корректировка_включена/корректировка_отключена
                    ctrl         = new CheckBox();
                    ctrl.Name    = INDEX_CONTROL.CHKBX_MODE_ENABLE.ToString();
                    ctrl.Text    = @"Корректировка значений разрешена";
                    ctrl.Dock    = DockStyle.Top;
                    ctrl.Enabled = false;
                    (ctrl as CheckBox).Checked = true;
                    _panelParent.Controls.Add(ctrl, 0, posRow = _panelParent.RowCount - 1);
                    _panelParent.SetColumnSpan(ctrl, _panelParent.ColumnCount / 2);
                    _panelParent.SetRowSpan(ctrl, 1);
                }
Пример #2
0
                /// <summary>
                /// Установка состояния элемента
                /// </summary>
                /// <param name="listCheckState">лист с чекедами для групп</param>
                private void setCheckStateValues(List <CheckState> listCheckState)
                {
                    CheckedListBoxGroupHeaders ctrl =
                        //findControl(INDEX_CONTROL.CLBX_GROUPHEADER_VISIBLED) as CheckedListBoxTaskVedomostBl
                        m_clbGroupHeaderCheckStates
                    ;

                    if (listCheckState.Count() > 0)
                    {
                        try {
                            if (ctrl.Items.Count > 0)
                            {
                                if (ctrl.Items.Count == listCheckState.Count())
                                {
                                    for (int i = 0, indxState = 0; i < ctrl.Items.Count; i++, indxState++)
                                    {
                                        ctrl.SetItemCheckState(indxState, listCheckState[indxState]);
                                    }
                                }
                                else
                                {
                                    // кол-во элементов для установки значений не соответствует кол-ву значений
                                    ;
                                }
                            }
                            else
                            {
                                // кол-во элементов для установки значений == 0
                                ;
                            }
                        } catch (Exception e) {
                            Logging.Logg().Exception(e, string.Format(@"ManagementVisible::setCheckStateValues () - кол-во значений для установки = {0}..."
                                                                      , listCheckState.Count())
                                                     , Logging.INDEX_MESSAGE.NOT_SET);
                        }
                    }
                    else
                    {
                        // кол-во состояний для установки == 0
                        ;
                    }
                }