ComboBoxEdit 목록에 마우스를 가져다 대면 Tooltip이 출력됩니다.
using DevExpress.Utils.Win;
using DevExpress.XtraEditors;
using DevExpress.XtraEditors.Popup;
using System;
using System.Drawing;
using System.Windows.Forms;
namespace WindowsFormsApp2
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
comboBoxEdit.Popup += comboBoxEdit_Popup;
comboBoxEdit.Properties.Items.Add("1");
comboBoxEdit.Properties.Items.Add("2");
comboBoxEdit.Properties.Items.Add("3");
comboBoxEdit.Properties.Items.Add("4");
}
#region comboBoxEdit_Popup(sender, e)
/// <summary>
/// 팝업을 출력합니다.
/// </summary>
/// <param name="sender">이벤트를 처리합니다.</param>
/// <param name="e"></param>
private void comboBoxEdit_Popup(object sender, EventArgs e)
{
PopupListBoxForm form = (sender as IPopupControl).PopupWindow as PopupListBoxForm;
form.ListBox.MouseMove += listBox_MouseMove;
form.ListBox.MouseLeave += listBox_MouseLeave;
}
#endregion
#region listBox_MouseLeave(sender, e)
/// <summary>
/// 마우스 포인터가 떨어졌을 때 동작합니다.
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void listBox_MouseLeave(object sender, EventArgs e)
{
toolTipController.HideHint();
}
#endregion
#region listBox_MouseMove(sender, e)
/// <summary>
/// 마우스 포인터가 움직일 때 발생합니다.
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void listBox_MouseMove(object sender, MouseEventArgs e)
{
PopupListBox listBoxControl = sender as PopupListBox;
ComboBoxEdit cmb = listBoxControl.OwnerEdit as ComboBoxEdit;
int index = listBoxControl.IndexFromPoint(new Point(e.X, e.Y));
if (index == -1)
{
toolTipController.HideHint();
}
else
{
string item = cmb.Properties.Items[index].ToString();
toolTipController.ShowHint(item, listBoxControl.PointToScreen(new Point(e.X, e.Y)));
}
}
#endregion
}
}
728x90
'C# > DevExpress' 카테고리의 다른 글
DevExpress / Winform GridControl에서 항목들을 모두 선택하고 선택해제 하기. (0) | 2019.04.07 |
---|---|
DevExpress / Winform DevExpress의 TextEdit에서 MultiLine 사용 가능한가 (0) | 2019.04.07 |
DevExpress / Winform 날짜 입력칸에 빈칸을 입력하게 되면? (1) | 2019.04.03 |
DevExpress / Winform GridControl의 DataSource에 행 추가하기 (0) | 2019.04.02 |
DevExpress / Winform GridControl의 DataSource에 List<T> 를 바인딩 하기. (0) | 2019.04.02 |
댓글