コード例 #1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="ComBox"></param>
        /// <param name="SelTag"></param>
        public static void SelectedComboBoxItemByTag(this System.Windows.Forms.ComboBox ComBox, object SelTag)
        {
            if (ComBox.Items != null && ComBox.Items.Count > 0)
            {
                ComBox.ComboBoxItem comBoxItem = null;
                try
                {
                    for (int i = 0; i < ComBox.Items.Count; i++)
                    {
                        comBoxItem = (ComBox.ComboBoxItem)ComBox.Items[i];

                        if (comBoxItem.Tag != null && comBoxItem.Tag.Equals(SelTag))
                        {
                            ComBox.SelectedIndex = i; break;
                        }
                    }
                }
                catch (System.Exception ex)
                {
                    throw ex;
                }
                finally
                {
                    if (comBoxItem != null)
                    {
                        comBoxItem = null;
                    }
                }
            }
        }
コード例 #2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="ComBox"></param>
        /// <param name="SelText"></param>
        public static void SelectedComboBoxItemByText(this System.Windows.Forms.ComboBox ComBox, string SelText)
        {
            if (ComBox.Items != null && ComBox.Items.Count > 0)
            {
                ComBox.ComboBoxItem comBoxItem = null;
                try
                {
                    for (int i = 0; i < ComBox.Items.Count; i++)
                    {
                        comBoxItem = (ComBox.ComboBoxItem)ComBox.Items[i];

                        if (comBoxItem.Text != null && comBoxItem.Text.ToString() == SelText)
                        {
                            ComBox.SelectedIndex = i; break;
                        }
                    }
                }
                catch (System.Exception ex)
                {
                    throw ex;
                }
                finally
                {
                    if (comBoxItem != null)
                    {
                        comBoxItem = null;
                    }
                }
            }
        }
コード例 #3
0
        /// <summary>
        /// 重繪 Combo Box
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void ComboBox_DrawItem(object sender, System.Windows.Forms.DrawItemEventArgs e)
        {
            ComboBox comBox = (ComboBox)sender;

            Graphics g = e.Graphics;

            Rectangle rec = e.Bounds;

            Font font = comBox.Font;

            if (e.Index > -1)
            {
                if (comBox.Items[e.Index] != null && (ComBox.ComboBoxItem)comBox.Items[e.Index] != null)
                {
                    ComBox.ComboBoxItem comBoxItem = (ComBox.ComboBoxItem)comBox.Items[e.Index];

                    SolidBrush solidBrush = new SolidBrush(Color.LightSkyBlue);

                    if (e.State == (DrawItemState.NoAccelerator | DrawItemState.NoFocusRect))
                    {
                        solidBrush = new SolidBrush(Color.LightSkyBlue);

                        e.Graphics.FillRectangle(solidBrush, rec);
                    }
                    else
                    {
                        e.Graphics.FillRectangle(solidBrush, rec);
                    }
                    solidBrush.Dispose();

                    System.Drawing.StringFormat sf = new System.Drawing.StringFormat();

                    SolidBrush sb = new SolidBrush(comBoxItem.ForeColor);

                    sf.Alignment = StringAlignment.Near;

                    e.Graphics.DrawString(comBoxItem.Text, font, sb, rec, sf);

                    e.DrawFocusRectangle();

                    sf = null; sb = null;
                }
            }
        }