نمایش Tooltip در ComboBox

گاهی اوقات ممکن است متن داخل یک کمبوباکس از عرض کمبوباکس بیشتر باشد و شما بخواهید متن را به صورت کامل و در قالب یک Tooltip نمایش دهید. برای این منظور ابتدا خاصیت DrawMode کمبو باکس را به OwnerDrawFixed تغییر دهید .

Tooltip-in-combobox

و سپس کدهای زیر را در رویداد DrawItem بنویسید :

private void comboBox1_DrawItem(object sender, DrawItemEventArgs e)
{
	string DropDownText;
	if (e.Index == -1)
	{
		DropDownText = string.Empty;
	}
	else
	{
		DropDownText = this.comboBox1.GetItemText(comboBox1.Items[e.Index]);
	}
	e.DrawBackground();
	using (SolidBrush br = new SolidBrush(e.ForeColor))
	{
		e.Graphics.DrawString(DropDownText, e.Font, br, e.Bounds);
	}

	if ((e.State & DrawItemState.Selected) == DrawItemState.Selected)
	{
		toolTip1.Show(DropDownText, comboBox1, e.Bounds.Right, e.Bounds.Bottom);
	}
}

حال برنامه را اجرا و نتیجه را مشاهده کنید :
Tooltip-in-combobox-1