示例#1
0
        public void InitializeConditionComboBox()
        {
            var haveWhereExtension = false;

            m_Condition.SuspendLayout();
            m_Condition.Properties.Items.Clear();
            foreach (var item in ParentModule.ConditionFields)
            {
                var haveToCreateItem = true;
                if (item.WhereExtension == "Y")
                {
                    haveWhereExtension = true;
                    if (Group == ConditionModule.RootGroup)
                    {
                        var count = (from condition in Group.Conditions
                                     where condition != this && (condition.m_Condition.EditValue as ModuleFieldInfo).FieldID == item.FieldID
                                     select 1).Count();

                        if (count > 0)
                        {
                            haveToCreateItem = false;
                        }
                    }
                }

                if (haveToCreateItem)
                {
                    m_Condition.Properties.Items.Add(
                        new ImageComboBoxItem
                    {
                        Description = ParentModule.Language.GetLabelText(item.FieldName),
                        Value       = item
                    }
                        );
                }
            }

            m_Condition.SelectedIndex = 0;
            if (haveWhereExtension)
            {
                m_Condition.QueryPopUp -= m_Condition_QueryPopup;
                m_Condition.QueryPopUp += m_Condition_QueryPopup;
            }
            m_Condition.ResumeLayout();
        }