C# 启用工具提示ActiveGantt 3.0.9.0

C# 启用工具提示ActiveGantt 3.0.9.0,c#,winforms,gantt-chart,C#,Winforms,Gantt Chart,我正在使用来自的ActiveGantt3.0.9.0CSN控件组合一个表单 但是,e.EventTarget拒绝在任务上触发。我可以检查值并在控件周围移动,我可以获取EVT_Clientarea、EVT_Row、EVT_Column、EVT_None、EVT_Splitter、EVT_Timeline、EVT_TimelineScrollBar来触发。但是,对于我通过此函数添加的任务,它只是表示我在EVT_Clientarea: activeGanttCSNCtl1.Tasks.Add(Addi

我正在使用来自的ActiveGantt3.0.9.0CSN控件组合一个表单

但是,e.EventTarget拒绝在任务上触发。我可以检查值并在控件周围移动,我可以获取EVT_Clientarea、EVT_Row、EVT_Column、EVT_None、EVT_Splitter、EVT_Timeline、EVT_TimelineScrollBar来触发。但是,对于我通过此函数添加的任务,它只是表示我在EVT_Clientarea:

activeGanttCSNCtl1.Tasks.Add(AddingTask.Description, AddingTask.RowKey, AddingTask.StartTime, AddingTask.EndTime, AddingTask.ID, AddingTask.Style, AddingTask.Layer);
这些任务都显示得很好,但当我将鼠标移到上面时,不会触发任务事件。如果有人能给我一些指导,我会非常感激的

谢谢,
迈克

谢谢你提出这个问题。尝试覆盖ToolTimponMouseHover:

private void ActiveGanttCSNCtl1_ToolTipOnMouseHover(object sender, AGCSN.ToolTipEventArgs e)
        {
            switch (e.EventTarget)
            {
                case E_EVENTTARGET.EVT_TASK:
                case E_EVENTTARGET.EVT_SELECTEDTASK:
                    ActiveGanttCSNCtl1.ToolTip.Visible = true;
                    return;
            }
            ActiveGanttCSNCtl1.ToolTip.Visible = false;
        }
当ToolTip对象的Visible属性设置为true时,OnMouseHoverToolTipDraw将激发,ToolTipOnMouseHover和OnMouseHoverToolTipDraw将协同工作。在ToolTipOnMouseHover中,通常在OnMouseHoverToolTipDraw中执行计算和实际绘图

在上面的示例中,OnMouseHoverToolTipDraw只会针对任务引发,而对所有其他对象忽略。ActiveGantt处理任务和作为两个不同对象选择的任务

致以最良好的祝愿

胡里奥·卢扎多


Boötes Systems SAS

我的问题不在于触发工具提示的函数的位置。我已经在ToolTimponMouseHover上使用了基本相同的函数。正如我所说,我的问题是让e.EventTarget始终等于EVT_TASK或EVT_SELECTEDTASK.作为旁注。我还尝试将ActiveGantsCnctl1.MathLib.GetTaskIndexByPosition(e.X,e.Y)函数用于其他用途,无论我在控件中单击什么位置,它都会返回-1,因为它似乎无法识别任务是否存在,即使它们确实存在。好吧,我已经找到了它,这不感谢工具的制造商。LayerEnableObjects属性设置为EC_incirentLayeronly,我选择了错误的层作为“当前”层。因此,您可以将此属性设置为EC_inallayers,也可以将当前图层设置为正确的图层。不知道如何在不给Julio评分的情况下设置问题的答案,因为他实际上没有解决任何问题。下次提供完整的代码时,用您提供的小代码猜不出答案。
private void ActiveGanttCSNCtl1_ToolTipOnMouseHover(object sender, AGCSN.ToolTipEventArgs e)
        {
            switch (e.EventTarget)
            {
                case E_EVENTTARGET.EVT_TASK:
                case E_EVENTTARGET.EVT_SELECTEDTASK:
                    ActiveGanttCSNCtl1.ToolTip.Visible = true;
                    return;
            }
            ActiveGanttCSNCtl1.ToolTip.Visible = false;
        }