使用ASP.NET MVC 3.0在鼠标悬停在条形图上时显示列标签

时间:2011-05-04 09:11:39

标签: c# asp.net-mvc-3 charts

我已经找到了解决方案,虽然我可以看到如何使用Silverlight,但我无法解决这个问题。我使用Microsoft的图表工具生成了一个简单的条形图,但是添加了大量列,因此x轴上的标签不清晰,只显示了几个列。

我用来生成图表的代码是:

public ActionResult ChartUserTotals() {
    var data = new ArrayList {};
    foreach (var user in org.Users) {
        data.Add(new { X = user.FullName, Y = UserTotal });
    }
    new Chart(400, 300, ChartTheme.Blue)
                .AddTitle("User Totals")
                .DataBindTable(data, "X")
                .SetYAxis("Totals")
                .Write("png");
    return null;
}

在我看来:

<img src='@url.Action("ChartUserTotals", "Dashboard")' alt="User Totals"/>

有没有人知道如何在列鼠标悬停时显示标签值?

2 个答案:

答案 0 :(得分:0)

我只是在Html元素上使用Title属性。

<img alt="ToolTip" src="/PermitApplication/Content/images/information.png" title="Enter
the phone number using XXX-XXX-XXXX or (XXX) XXX-XXXX">

似乎可以在任何现代浏览器中使用。

答案 1 :(得分:0)

我知道我很久以前就问过了,但我想我应该提一下给定的答案(使用标题attirbute)并不是我想要的(因为工具提示需要根据用户悬停的列而有所不同)但是,我以不同的方式解决了这个问题。我最终使用了jQuery插件HighCharts(这是一个非常简单的,更不用说漂亮的jQuery插件)。虽然不是MVC友好,需要通过Razor将C#数组推入javascript,但它确实有效。对于任何有类似问题的人来说,这就是我要推荐的内容