如何知道TextEdit中当前的可见性偏移?

时间:2014-01-17 17:47:00

标签: c# winforms devexpress

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

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

说明我想要的东西:

enter image description here

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

1 个答案:

答案 0 :(得分:2)

我已经对此进行了最低限度的测试,它似乎有效,尽管有些情况可能会偏离1个像素:

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

我已将它放在TextChanged事件处理程序中以进行测试。

如果它符合您的需要,请告诉我。

干杯

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

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

这似乎会带来更好的结果。