【问题标题】:How to turn on line number tooltip while scrolling infragistics ultrawebgrid如何在滚动基础设施 Ultrawebgrid 时打开行号工具提示
【发布时间】:2010-12-21 20:37:30
【问题描述】:

我曾经看到过这个功能,但我不知道如何打开它。拖动滚动条时,网格可以显示带有当前行号(或行 ID)的工具提示。这可以帮助您在正确的位置停止滚动。我假设某些属性会打开它,但我找不到它。 也许它也依赖于滚动模式?

更新: 在下图中,您可以看到我正在寻找的工具提示示例。这在滚动条被拖动(向上或向下)时显示。工具提示中的数字是行号(您在此图像中看不到它,在网格的左侧)。这是我现在使用的同一个网格。只是来自我们产品的一个非常古老的版本。不知何故,这个工具提示被关闭了。没有人知道如何重新打开它:( 我很确定这是 ultrawebgrid 的内置功能。不需要额外编码。

alt text http://img138.imageshack.us/img138/6337/croppercapture.jpg

【问题讨论】:

  • 您是否更新了控制集?浏览器版本有变化吗? (很多 IG 功能在控制和/或浏览器更新后对我来说传统上变得“奇怪”。)

标签: asp.net infragistics ultrawebgrid


【解决方案1】:

对!既然我们已经确定您拥有 6.3 版,我希望能为您找到解决方案。我自己没有 6.3,但我有一个稍晚一点的,我认为还没有添加虚拟滚动作为功能。

所以试试这个代码:

webgrid.DisplayLayout.XmlLoadOnDemandType = XmlLoadOnDemandType.Virtual;

这应该会在您向下滚动时自动在网格上放置一个工具提示。查看here 的运行示例...(记得选择虚拟选项)

这是希望!

罗伯克

【讨论】:

  • 我在 ascx 端有“XmlLoadOnDemandType="Virtual"。感谢 Rob 的努力。
  • 您是否查看了链接中的运行示例?工具提示是否显示在您的浏览器中的“虚拟”示例中。只是试图消除浏览器问题
  • 另一件事 - 大概你从一个工作示例中截取了上面的屏幕截图 - 你能否查看源代码并将其粘贴到此处或通过电子邮件发送给我,我们也许可以对其进行逆向工程。如果您从中截取屏幕截图的网站是使用 6.3 版构建的,那么它必须是可能的。重新检查该站点上的版本是否安全?
  • 旧产品的版本也是 6.3。将文件通过电子邮件发送给您
  • 好的 - 我已经查看了您发送的文件,老实说,尝试确定您正在寻找的小功能最好作为原型完成。我建议您启动一个空白的 ASP.Net 项目并从 6.3 版开始在其中放置一个网格。然后将 XMLLoadOnDemandType 更改为 Virtual,并生成 1000 行。然后看看你的工具提示是否显示(在不同的浏览器中)。如果没有,那么你知道先解决这个问题。如果显示,那么您可以更深入地了解 ascx 版本。听起来像一个计划?
【解决方案2】:

我不知道是否有一个 UltraWebGrid 属性可以简单地打开您正在寻找的行为。我几乎怀疑您在另一个应用程序中体验过此功能,甚至可能不是基于 Web 的应用程序(对不起!)。不过我确实知道你在说什么。

作为一种解决方法,我建议允许用户输入目标行号,然后使用this technique 简单地“跳转”到它。

如果您不满意,也许可以使用 JavaScript 实现此行为。您需要使用 this technique 之类的东西来获取您需要的信息,估计(或实际检测,如果可能的话)行号,其余的取决于 GUI。不过,我会采用上述解决方法:)

【讨论】:

  • 请查看有问题的更新。这肯定是一个 ultrawebgrid 功能。我回到我们的旧产品版本(使用相同的 ultrawebgrid)并截取了屏幕截图。
  • 我本来想要一张屏幕截图,但我想你无法提供。这绝对是我的想法。希望其他人会识别该功能!抱歉,我无法提供更多帮助!
【解决方案3】:

我在这里从内存中输入这个,因为我没有在这台机器上安装它,而且我以前没有看到过这个设置,但是如何在InitializeRow 事件中添加这样的内容:

foreach (UltraGridCell cell in e.Row.Cells)
{
    if(cell.Column.Key == "Topic") //from your grid above
       cell.Title = cell.Row.Index;
}

行对象本身没有内存中的“标题”属性,但单元格有。

看看有没有用……

问候,
抢G

【讨论】:

  • 看起来您的代码在列本身上添加了一个工具提示。尽管它在屏幕截图中看起来是这样,但它实际上是在拖动滚动条时显示的。不确定这会产生想要的效果。我也许可以在早上检查。
  • 是的 - 我正在考虑将鼠标悬停在包含工具提示的列上并使用鼠标滚轮滚动从而创建效果。您还可以考虑根据 scollbar 位置触发悬停事件。当我在我的机器上使用基础设施时,我会试一试。
【解决方案4】:

好的 - 我想我找到了你的虚幻设置:

您可以将Override 上的TipStyleScroll 设置为网格上的Show(这可能取决于版本)。

您可以使用带区的ScrollTipField 属性来确定将哪个字段显示为工具提示。

我是这样做的:

        myGrid.DisplayLayout.Override.TipStyleScroll = TipStyle.Show;
        myTopBand.ScrollTipField = "Id";

...它就像一个魅力!

如果列表很长,有时将ScrollStyle 设置为Deferred 会有所帮助:

        myGrid.DisplayLayout.ScrollStyle = ScrollStyle.Deferred;

希望对您有所帮助...

罗伯克

【讨论】:

  • 起初看起来很有希望。但我的版本在 DisplayLayout 上没有 Override。此外,我在网上找不到任何显示 TipStyleScroll 存在于网络网格上的文档。看起来它只在网络网格上:(
  • 你有哪个版本?也许那时我可以提供帮助。我的最终答案有帮助吗?干杯,罗伯
  • 我有 6.3.20063.1056 DLL 是 Infragistics2.WebUI.UltraWebGrid.v6.3.dll
【解决方案5】:

再一次 - 不确定您使用的是哪个版本,所以为了安全起见,您可以从 2009 版本开始尝试:

myGrid.Behaviors.VirtualScrolling.Enabled = true;
myGrid.Behaviors.VirtualScrolling.TooltipVisibility = DefaultableBoolean.True;

如果您的滚动模式是Deferred 而不是Virtual,则工具提示通常默认启用。

您可以找到有关此功能的完整详细信息here

希望对你有帮助,

罗伯克

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-04-15
    • 1970-01-01
    • 1970-01-01
    • 2016-04-26
    • 1970-01-01
    • 2023-03-20
    • 2021-08-27
    • 1970-01-01
    相关资源
    最近更新 更多