【问题标题】:How to get and set value/location on vertical scroll bar in SpreadsheetGear control如何在 SpreadsheetGear 控件中的垂直滚动条上获取和设置值/位置
【发布时间】:2015-05-01 07:01:03
【问题描述】:

我正在使用SpreadsheetGear 控件。我希望能够获得垂直滚动条的位置,以便在刷新控件后,我可以将用户返回到他们在刷新之前查看的同一组行。

ScrollPositionChanged 事件运行良好,但我在WorkbookView 对象或ScrollPositionChangedEventArgs 对象中没有看到任何可以告诉我滚动条当前位置的信息。

我也没有看到任何方法可以在垂直滚动条上设置值以在刷新后重置其位置。

我确定我在这里很厚。提前致谢。

【问题讨论】:

    标签: spreadsheetgear


    【解决方案1】:

    您可以在滚动时使用 WindowInfo 对象的 ScrollRow 属性获取顶行的行位置。

    int rowPosition = workbookView1.ActiveWorksheet.WindowInfo.ScrollRow;
    

    如果你想让workbookView回到这个位置,你可以在工作表单元格上使用Activate()方法。

    workbookView1.ActiveWorksheet.Cells[rowPosition, 0].Activate();
    

    【讨论】:

    • 嗨,丹,谢谢您的回答。每次打开新的电子表格文件时,我都希望将水平滚动位置设置为同一列。我将您的想法更改为:ActiveWorksheet.Cells(0, 22).Activate()。这确实激活了该列(我看到它已被选中)。但该列未滚动到位。我试过:WorkbookView1.ActiveWorksheet.WindowInfo.ScrollColumn = 22。这将第 22 列设置为 WorkbookView 中的最左侧位置。但我无法滚动查看 A-V 列。另外,我必须做 GetLock 和 ReleaseLock。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-04
    • 2013-03-22
    • 2021-11-24
    相关资源
    最近更新 更多