C#中的ActiveX控件拖放

时间:2010-04-07 08:38:45

标签: c# .net drag-and-drop activex

我正在使用C#制作Windows Form App,并且最好地控制我需要的是ActiveX控件(日历)。问题是我需要拖放但我使用的控件没有事件(只有积极的事情是它具有属性“AllowDrop”)。 (控制是Xtreme Calendar - Codejock)

1 个答案:

答案 0 :(得分:0)

我确实设法做到了。使用ListBox及其事件MouseDown(使用IndexFromPoint方法获取数据)和MouseUp(调用Calendar的DoubleClick事件)。

    private string name = string.Empty;

    private void lstNames_MouseDown(object sender, MouseEventArgs e)
    {
        if (lstNames.Items.Count == 0)
            name = string.Empty;
        else
        {
            int index = lstNames.IndexFromPoint(e.X, e.Y);
            name = lstNames.Items[index].ToString();
        }
    }

    private void lstNames_MouseUp(object sender, MouseEventArgs e)
    {
        if (name != string.Empty)
            CalendarControl_DblClick(name, null);
    }