PDA

View Full Version : بالا و پائین بردن ScrollBar با کد نویسی در TextBox



sa_ghaznavi
دوشنبه 30 دی 1387, 09:59 صبح
من یک RichTextBox دارم که می خواهم با کد نویسی ScrollBar را در متن بالا و پائین کنم . لطفا مرا راهنمائی کنید .

newgoldenman
دوشنبه 30 دی 1387, 13:08 عصر
براي پايين آوردن، مثلاً ميشه از اين كد استفاده كرد:

Sendkeys.Send("{PGDN}");
و به همين ترتيب براي بالا بردن:

Sendkeys.Send("{PGUP}");

موفق باشيد.

sa_ghaznavi
دوشنبه 30 دی 1387, 14:53 عصر
با تشکر از کمکتون ، ولی نتونستم انجام بدم . ممکنه بگین در کدوم ایونت باید بنویسم

newgoldenman
دوشنبه 30 دی 1387, 15:12 عصر
بر فرض توي يك تكست باكس، توي رويداد زير بنويس:

private void textBox1_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)
{
if (e.KeyCode.Equals(Keys.P))
{
MessageBox.Show("Button P Pressed >> Go A Page Down!!!");
SendKeys.Send("{PGDN}");
}
}
موفق باشيد.

sa_ghaznavi
سه شنبه 01 بهمن 1387, 10:22 صبح
در ایونتی که گفتید قرار دادم ولی نشد . بگذارید سوالم رو واضحتر بگم:
من دو TextBox دارم(یکی زیر دیگری) ، در دومی(پائینی) که می نویسم و اینتر می زنم ، همون جمله را در بالایی هم نشون می ده بعلاوه جملاتی که خود سیستم در textBox بالایی اضافه می کند ؛ حال وقتی که تعداد جملات زیاد می شند اتوماتیک ScrollBar می اندازد . من می خواهم همیشه ScrollBar پائین ترین خط رو نشون بده.

H2K
سه شنبه 01 بهمن 1387, 12:36 عصر
سلام خوب چرا از RichTexBox استفاده نميكنى؟

newgoldenman
سه شنبه 01 بهمن 1387, 13:25 عصر
در ایونتی که گفتید قرار دادم ولی نشد .

من كدهايي كه به دوستان معرفي ميكنم، همه رو تست ميكنم توي يك برنامه، و سپس Copy Paste ميكنم اينجا. اگه هنوز هم مشكل داريد با اين كد، براتون نمونه برنامه اش رو قرار بدم.


من می خواهم همیشه ScrollBar پائین ترین خط رو نشون بده.
يك راه حل:

سلام خوب چرا از RichTexBox استفاده نميكنى؟

راه حل بعدي:
با استفاده از همين نمونه كد كه من معرفي كردم به شما، به تعداد نيازي كه داريد، هر بار Page Down رو به TextBox خودتون(حالا چه بالايي و چه پاييني) ارسال كنيد. اينطوري هميشه آخرين خطوط رو مشاهده ميكنيد.

موفق باشيد.

ennovation
سه شنبه 01 بهمن 1387, 14:13 عصر
سلام و با احترام به پیشنهادهای مطرح شده
دوست عزیز با فرض اینکه richTextBox2 همونی هست که میخواهی همیشه بصورت اتومات Scroll بشه فقط و فقط کافیه که این دو خط رو بنویس .



richTextBox2.SelectionStart = richTextBox2.Text.Length;
richTextBox2.ScrollToCaret ();


این کد با textbox هم کار میکنه .
موفق باشی .

sa_ghaznavi
چهارشنبه 02 بهمن 1387, 12:40 عصر
از همه دوستان به خاطر کمکشون ممنونم . ولی روشی که آقای Ennovation پیشنهاد کرد ، به راحتی جواب داد.