【问题标题】:How to know the current visibility offset in TextEdit?如何知道 TextEdit 中当前的可见性偏移?
【发布时间】:2014-01-17 17:46:59
【问题描述】:

在 TexBox/TexEdit 中书写时,如果文本大于控件的大小,则会向右滚动。

如何获取当前的可见性偏移或滚动长度?

为了说明我想要什么:

黑框代表全文。红色框是 TextEdit,包含文本的可见部分。棕色垂直线是插入符号。我想知道的是以像素为单位的偏移量度。

【问题讨论】:

    标签: c# winforms devexpress


    【解决方案1】:

    我对此进行了最少的测试,它似乎可以工作,尽管在某些情况下它可能会偏离 1 个像素:

    int offset = tb.GetPositionFromCharIndex(0).X;
    

    出于测试目的,我已将其放入 TextChanged 事件处理程序中。

    如果它满足您的需求,请告诉我。

    干杯

    编辑:我已经通过这样做来添加边框的宽度(默认为 Fixed3D):

    int offset = tb.GetPositionFromCharIndex(0).X + SystemInformation.Border3DSize.Width;
    

    这似乎给出了更好的结果。

    【讨论】:

    • 似乎可以在文本框上工作,谢谢。你知道如何在 DevExpress TextEdit 中做同样的事情吗?
    猜你喜欢
    • 1970-01-01
    • 2020-11-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-14
    相关资源
    最近更新 更多