PDA

View Full Version : تغییر رنگ RichtextBox به رنگ دلخواه در حالت Enabled



golestan1
سه شنبه 21 اردیبهشت 1395, 22:52 عصر
و سوال دوم آیا این امکان وجود دارد که ارتفاع ریچ باکس به اندازه تعداد کلمات به صورت خودکار تغییر کند مثال عرض همیشه 500 باشد ولی اگه متن طولانی بود ارتفاع خودکار کم یا زیاد شود

csharpcollegian
چهارشنبه 22 اردیبهشت 1395, 00:19 صبح
سلام
بله میشه این کار رو کرد ولی به این نکته توجه داشته باشید که با انجام این کار، ScrollBar مربوط به RichTextBox از کار می افته و ارتفاع اون از حالت کنترل شده خارج میشه. در نتیجه اگر کاربر بیش از اندازه تایپ بکنه ارتفاع RichTextBox هم بیش اندازه زیاد شده و از فرم خارج میشه.

private void richTextBox1_ContentsResized(object sender, ContentsResizedEventArgs e)
{
richTextBox1.Height = e.NewRectangle.Height + richTextBox1.Margin.Horizontal;
}

golestan1
چهارشنبه 22 اردیبهشت 1395, 01:08 صبح
سلام
بله میشه این کار رو کرد ولی به این نکته توجه داشته باشید که با انجام این کار، ScrollBar مربوط به RichTextBox از کار می افته و ارتفاع اون از حالت کنترل شده خارج میشه. در نتیجه اگر کاربر بیش از اندازه تایپ بکنه ارتفاع RichTextBox هم بیش اندازه زیاد شده و از فرم خارج میشه.

private void richTextBox1_ContentsResized(object sender, ContentsResizedEventArgs e)
{
richTextBox1.Height = e.NewRectangle.Height + richTextBox1.Margin.Horizontal;
}

با سلام وتشکر
متاسفانه کد کمی ایراد دارد و اگه متن کمی طولانی باشد منظورم چند سطر باشد به قسمت زیر متن فضای خالی ایجاد می شود وگرنه دقیقا همونیست که دنبالشم

csharpcollegian
چهارشنبه 22 اردیبهشت 1395, 01:49 صبح
سلام مجدد
دوست عزیز همین الان مجددا تستش کردم، مشکلی نداشت...
اگر ممکنه یه عکس از ایرادی که میگید، آپ کنید

golestan1
چهارشنبه 22 اردیبهشت 1395, 11:53 صبح
سلام مجدد
دوست عزیز همین الان مجددا تستش کردم، مشکلی نداشت...
اگر ممکنه یه عکس از ایرادی که میگید، آپ کنید


آقا شرمنده کد شما درست بود من اشتباهی کد رو در رویداد دومین ریچ گذاشتم
بسیار ممنون