示例#1
0
        public virtual void UpdateLayout()
        {
            textFormat = TextFormatFlags.TextBoxControl
                         | TextFormatFlags.EndEllipsis
                         | TextFormatFlags.WordBreak;

            textFormat |= DrawingUtils.ContentAlignmentToTextFormatFlags(labelAlignment);

            if (Multiline == true)
            {
                textFormat &= ~TextFormatFlags.SingleLine;
            }
            else
            {
                textFormat |= TextFormatFlags.SingleLine;
            }

            this.Invalidate();
        }
示例#2
0
        protected virtual void UpdateLayout()
        {
            this.iconRect = this.IconRect;
            this.textRect = this.TextRect;

            textFormat = DrawingUtils.ContentAlignmentToTextFormatFlags(TextAlignment);

            textFormat |= TextFormatFlags.TextBoxControl
                          | TextFormatFlags.WordBreak
                          | TextFormatFlags.EndEllipsis;

            if (Multiline)
            {
                textFormat |= TextFormatFlags.WordBreak;
                textFormat &= ~TextFormatFlags.SingleLine;
            }
            else
            {
                textFormat |= TextFormatFlags.SingleLine;
                textFormat &= ~TextFormatFlags.WordBreak;
            }

            this.Invalidate();
        }
示例#3
0
        protected virtual void UpdateLayout()
        {
            Rectangle viewRect    = this.ClientRectangle;
            Padding   viewPadding = this.Padding;

            Rectangle labelRect;
            Rectangle checkBackRect;
            Rectangle checkRect;

            int checkWidth  = this.CheckmarkWidth;
            int checkHeight = this.CheckmarkHeight;
            int checkOffset = 5;

            checkBackRect = new Rectangle();

            switch (CheckmarkAlignment)
            {
            case VerticalAlignment.Top:
                checkBackRect.X = viewRect.Left + viewPadding.Left;
                checkBackRect.Y = viewRect.Top + viewPadding.Top;
                break;

            case VerticalAlignment.Middle:
                checkBackRect.X = viewRect.Left + viewPadding.Left;
                checkBackRect.Y = viewPadding.Top + (viewRect.Height - viewPadding.Vertical - checkHeight) / 2;
                break;

            case VerticalAlignment.Bottom:
                checkBackRect.X = viewRect.Left + viewPadding.Left;
                checkBackRect.Y = viewRect.Bottom - viewPadding.Bottom - checkHeight;
                break;
            }

            switch (Style)
            {
            case CheckmarkStyle.Checkmark:
                checkBackRect.Width = checkBackRect.Height = checkHeight;
                checkRect           = checkBackRect;
                checkRect.Width     = checkRect.Height -= checkOffset * 2;
                checkRect.X        += checkOffset;
                checkRect.Y        += checkOffset;
                this.CheckmarkIcon  = VectorIcons.Checkmark(checkRect);
                break;

            case CheckmarkStyle.Square:
                checkBackRect.Width = checkBackRect.Height = checkHeight;
                checkRect           = checkBackRect;
                checkRect.Width     = checkRect.Height -= checkOffset * 2;
                checkRect.X        += checkOffset;
                checkRect.Y        += checkOffset;
                break;

            case CheckmarkStyle.Toggle:
                checkBackRect.Width  = checkWidth;
                checkBackRect.Height = checkHeight;
                checkRect            = checkBackRect;
                checkRect.Width     -= checkOffset * 2;
                checkRect.Width     /= 2;
                checkRect.Height    -= checkOffset * 2;
                checkRect.X         += checkOffset;
                checkRect.Y         += checkOffset;

                if (Checked == true)
                {
                    checkRect.X += checkRect.Width;
                }
                break;

            default:
                checkBackRect.Width  = checkWidth;
                checkBackRect.Height = checkHeight;
                checkRect            = checkBackRect;
                break;
            }

            labelRect = new Rectangle(
                viewRect.Left + viewPadding.Left + checkBackRect.Width + TextOffset,
                viewRect.Top + viewPadding.Top,
                viewRect.Width - viewPadding.Horizontal - checkBackRect.Width - TextOffset,
                viewRect.Height - viewPadding.Vertical);

            TextRect          = labelRect;
            CheckmarkBackRect = checkBackRect;
            CheckmarkRect     = checkRect;

            textFormat = DrawingUtils.ContentAlignmentToTextFormatFlags(TextAlignment);

            textFormat |= TextFormatFlags.TextBoxControl
                          | TextFormatFlags.WordBreak
                          | TextFormatFlags.EndEllipsis;

            if (Multiline)
            {
                textFormat |= TextFormatFlags.WordBreak;
                textFormat &= ~TextFormatFlags.SingleLine;
            }
            else
            {
                textFormat |= TextFormatFlags.SingleLine;
                textFormat &= ~TextFormatFlags.WordBreak;
            }

            this.Invalidate();
        }