コード例 #1
0
        /*
         * OnMeasureItem
         */

        /// <summary>
        /// Raises the <see cref="E:System.Windows.Forms.ComboBox.MeasureItem"></see> event.
        /// </summary>
        /// <param name="e">The <see cref="T:System.Windows.Forms.MeasureItemEventArgs"></see> that was raised.</param>
        protected override void OnMeasureItem(MeasureItemEventArgs e)
        {
            Size itemSize = NuGenItemService.GetItemSize(
                e.Graphics,
                this.ImageList,
                this.GetItemText(this.Items[e.Index]),
                this.Font
                );

            e.ItemWidth  = itemSize.Width;
            e.ItemHeight = itemSize.Height;
        }
コード例 #2
0
ファイル: NuGenListBox.cs プロジェクト: carlhuth/GenXSource
        /*
         * OnDrawItem
         */

        /// <summary>
        /// Raises the <see cref="E:System.Windows.Forms.ListBox.DrawItem"></see> event.
        /// </summary>
        /// <param name="e">A <see cref="T:System.Windows.Forms.DrawItemEventArgs"></see> that contains the event data.</param>
        protected override void OnDrawItem(DrawItemEventArgs e)
        {
            if (e.Index < 0 || this.Items.Count < 1)
            {
                return;
            }

            NuGenItemParams itemParams = new NuGenItemParams(this, e.Graphics, e.Bounds, e.State);

            itemParams.Font      = this.Font;
            itemParams.ForeColor = e.ForeColor;

            if (this.ImageList != null)
            {
                itemParams.Image = this.ImageListService.FindImageAtIndex(this.ImageList, e.Index);
            }

            itemParams.Text = this.GetItemText(this.Items[e.Index]);

            this.Renderer.DrawItem(NuGenItemService.BuildItemPaintParams(itemParams));
        }