コード例 #1
0
        private void DrawImage(RepositoryItemCheckedImageComboBoxEdit edit, Graphics gr, int index, ref Rectangle valRect)
        {
            Image     image = edit.GetItemImage(index);
            Rectangle rect  = new Rectangle(valRect.X, valRect.Y, RepositoryItemCheckedImageComboBoxEdit.ImageWidth,
                                            RepositoryItemCheckedImageComboBoxEdit.ImageHeight);

            if (image != null)
            {
                gr.DrawImage(image, rect);
                valRect.X += RepositoryItemCheckedImageComboBoxEdit.ImageWidth + 2;
            }
        }
コード例 #2
0
        protected override void DrawString(ControlGraphicsInfoArgs info, Rectangle bounds, string text, DevExpress.Utils.AppearanceObject appearance)
        {
            PopupContainerEditViewInfo             viewInfo = info.ViewInfo as PopupContainerEditViewInfo;
            RepositoryItemCheckedImageComboBoxEdit edit     = viewInfo.Item as RepositoryItemCheckedImageComboBoxEdit;

            if (!edit.CanShowImageInEditBox)
            {
                base.DrawString(info, bounds, text, appearance);
            }
            else
            {
                DrawContent(info, bounds, text, appearance);
            }
        }
 public override void Assign(RepositoryItem item)
 {
     BeginUpdate();
     try {
         base.Assign(item);
         RepositoryItemCheckedImageComboBoxEdit source = item as RepositoryItemCheckedImageComboBoxEdit;
         if (source == null)
         {
             return;
         }
         imageMember         = source.ImageMember;
         showImagesInEditBox = source.ShowImagesInEditBox;
     }
     finally {
         EndUpdate();
     }
 }
コード例 #4
0
        private void DrawContent(ControlGraphicsInfoArgs info, Rectangle bounds, string text, DevExpress.Utils.AppearanceObject appearance)
        {
            PopupContainerEditViewInfo             viewInfo = info.ViewInfo as PopupContainerEditViewInfo;
            RepositoryItemCheckedImageComboBoxEdit edit     = viewInfo.Item as RepositoryItemCheckedImageComboBoxEdit;

            string[]  values  = text.Split(edit.SeparatorChar);
            Rectangle valRect = new Rectangle(bounds.X, bounds.Y, 0, bounds.Height);

            foreach (string val in values)
            {
                int index = GetIndexByDescription(edit.GetItems(), val.Trim());
                if (index != -1)
                {
                    DrawImage(edit, info.Graphics, index, ref valRect);
                }
                string str = val;
                if (Array.IndexOf(values, val) < values.Length - 1)
                {
                    str = string.Concat(val, edit.SeparatorChar);
                }
                DrawString(info, appearance, ref valRect, str);
            }
        }
 static CheckedImageComboBoxEdit()
 {
     RepositoryItemCheckedImageComboBoxEdit.RegisterCheckedImageComboBoxEdit();
 }