Я хочу прокручивать timeBox вверх, когда я прокручиваю chatBox вверх. (не обязательно наоборот)
Я нашел следующий код для этого:
/// Subclass RichTextBox to add the capability to bind scrolling for multiple RichTextBoxs.
/// This is useful for 'parallel' RTBs that require synchronized scrolling.
/// Taken from https://gist.github.com/593809
/// Added WM_HSCROLL
/// Added BindScroll() to form a two-way linkage between RichTextBoxes.
/// Example usage showing how to bind 3 RichTextBoxes together:
/// rtb1.BindScroll(rtb2);
/// rtb2.BindScroll(rtb3);
/// rtb3.BindScroll(rtb1);
class RichTextBoxSynchronizedScroll : RichTextBox
{
private const int WM_VSCROLL = 0x115;
private const int WM_HSCROLL = 0x114;
private List<RichTextBoxSynchronizedScroll> peers = new List<RichTextBoxSynchronizedScroll>();
/// <summary>
/// Establish a 2-way binding between RTBs for scrolling.
/// </summary>
/// <param name="arg">Another RTB</param>
public void BindScroll( RichTextBoxSynchronizedScroll arg )
{
if ( peers.Contains( arg ) || arg==this ) { return; }
peers.Add( arg );
arg.BindScroll(this);
}
private void DirectWndProc(ref Message m)
{
base.WndProc(ref m);
}
protected override void WndProc(ref Message m)
{
if (m.Msg == WM_VSCROLL || m.Msg == WM_HSCROLL )
{
foreach (RichTextBoxSynchronizedScroll peer in this.peers)
{
Message peerMessage = Message.Create(peer.Handle, m.Msg, m.WParam, m.LParam);
peer.DirectWndProc(ref peerMessage);
}
}
base.WndProc(ref m);
}
}
Тем не менее, я ломал голову над этим более 2 часов, пытаясь заставить работать разные коды, но я не могу заставить ни один из них работать, так как я только относительно только начал программировать, и Не могу понять, что делать с этим кодом.
Я пытался поместить его как дополнительный класс в код моей формы, но тогда я не мог применить BindScroll() к любому текстовому полю, так как не мог ссылаться на них или экземпляр.
Может быть, я мог бы, но я не знаю, как. Я пытался использовать только код внутри класса, не будучи классом сам по себе, но это вызывало ошибки.
Любая помощь приветствуется...