2012-02-08 17 views
1

私は複数行のテキストボックスを持つWebコントロールを持っています。私はtimer_tickイベントを使用してテキストボックスの内容を更新しています。私は、timer_tickイベントが発生するたびにテキストボックスの最後の行を表示します。誰かが私を助けることができますか?複数行のテキストボックスの一番下にスクロールする方法は?

+1

これまでのコードをご覧ください。 – Magnus

答えて

0

あなたの質問は少し不明であるが、サーバーサイドでASP.NETテキストボックスの最後の行を取得するには:

var lines = input.value.split('\n'); 
var lastLine = lines[lines.length-1]; 
:あなたはこのJavaScriptで最後の行を取得することができ、クライアント側で

Dim lastLine = txt.Text.Split({Environment.NewLine}, 
          StringSplitOptions.None).Last 

あなたの質問は代わりに「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; 
    } 
} 
+0

あなたが知っているように、私はテキストボックスのタイマーを使ってデータベースからメッセージを取り出し、特定のユーザーにメッセージがあるかどうかを確認しています。私は2秒ごとにデータベースをチェックするためにTimer_Tickイベントにコードを書いています。このタイマーが起動されると、テキストボックスは2秒ごとに自動的に一番上にスクロールされます。私はユーザーに新しいメッセージを表示しているテキストボックスの一番下の行を表示したいと思います。 – krrish

+0

@krisch:そうですね、あなたの質問は代わりにです:複数行のTextBoxの一番下にスクロールする方法は? –

+0

ええ、あなたは正しいです(リフレッシュするたびにボトムが表示されます)。 – krrish

0

私はOPがすべてのアップデートでテキストボックスを一番下にスクロールするのを探していたと思います。 私を助けたthisが見つかりました。

Textbox1.SelectionStart = Textbox1.Text.Length - 1 
Textbox1.ScrollToCaret() 
関連する問題