我有一个网页控件,其中有一个多行文本框。我正在使用timer_tick事件更新文本框的内容。我想在每次触发timer_tick事件时显示文本框的最后一行。有人可以帮助我吗?
答案 0 :(得分:0)
您的问题有点不清楚,但要在服务器端获取ASP.NET TextBox的最后一行:
Dim lastLine = txt.Text.Split({Environment.NewLine},
StringSplitOptions.None).Last
在客户端,您可以使用此javascript获取最后一行:
var lines = input.value.split('\n');
var lastLine = lines[lines.length-1];
您的问题似乎是“how to scroll asp.net textbox to bottom?”
处理Sys.WebForms.PageRequestManager.endRequest
事件并向下滚动文本框:
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
function EndRequestHandler(sender, args)
{
if (args.get_error() == undefined)
{
var tbox = $get('<%= TextBox1.ClientID %>');
tbox.scrollTop = tbox.scrollHeight;
}
}
答案 1 :(得分:0)
我认为OP正在寻找在每次更新时将文本框滚动到底部。 我发现this帮助了我。
Textbox1.SelectionStart = Textbox1.Text.Length - 1
Textbox1.ScrollToCaret()