Неизвестное количество текста в richtextbox без скроллинга?
От: _Андрей_  
Дата: 13.09.05 15:41
Оценка:
Надо поместить неизвестное количество текста в richtextbox, но хочестя чтобы высота RTB была равна количесву текста.
То есть 10 строчек — высота 10 строчек. 20 строчек — 20 строчек. И скроллинга соотвественно не появлялось.

Может есть иной способ вывести текст на форму?
поиск не дал ничего. MSDN тоже не помог
Re: Неизвестное количество текста в richtextbox без скроллин
От: Badenweiler Россия http://helloimyourmind.com/
Дата: 14.09.05 02:30
Оценка:
Здравствуйте, _Андрей_, Вы писали:

_А_>Надо поместить неизвестное количество текста в richtextbox, но хочестя чтобы высота RTB была равна количесву текста.

_А_>То есть 10 строчек — высота 10 строчек. 20 строчек — 20 строчек. И скроллинга соотвественно не появлялось.

_А_>Может есть иной способ вывести текст на форму?

_А_>поиск не дал ничего. MSDN тоже не помог

myRichTextBox.Height = myRichTextBox.GetPositionFromCharIndex(RichTextBox.Text.Length - 1) + myRichTextBox.Font.GetHeight();
... << Anywhere but home :: Hello, I'm your mind >>
Re[2]: Неизвестное количество текста в richtextbox без скрол
От: _Андрей_  
Дата: 14.09.05 16:11
Оценка:
Здравствуйте, Badenweiler, Вы писали:

B>
B>myRichTextBox.Height = myRichTextBox.GetPositionFromCharIndex(RichTextBox.Text.Length - 1) + myRichTextBox.Font.GetHeight();
B>


Спасиб. Направление правильное но не всегда точно рассчитавается и ионгда строчки не хватает

Господа программеры? Вы что не выводите большие блоки текста неизвестной длины? ну не верицца мне.

Помогите, плз. НАставьте на путь истинный
Re[2]: Неизвестное количество текста в richtextbox без скрол
От: Аноним  
Дата: 16.09.05 09:39
Оценка:
public class ResizableRichTextBox : RichTextBox
{
private int _MinHeight = 35;

public ResizableRichTextBox()
{
this.ScrollBars = RichTextBoxScrollBars.None;
this.Multiline = true;
//this.AutoSize = true;
this.Height = _MinHeight;
}
protected override void OnContentsResized(ContentsResizedEventArgs e)
{
int h = e.NewRectangle.Height;
int fh = (int)((this.Lines.Length+1) * this.Font.GetHeight());
if(h < fh)
h = fh;
if(h < _MinHeight)
h = _MinHeight;
this.Height = h;
}
}
---
Конкурс 2005: LayeredWindow, Lens, MenuBuilder, Win32ResourceManager, Html2XmlConverter, DropDownHolder .


данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение
Re[3]: Неизвестное количество текста в richtextbox без скрол
От: Badenweiler Россия http://helloimyourmind.com/
Дата: 16.09.05 14:16
Оценка:
Здравствуйте, Varg, Вы писали:

V>public class ResizableRichTextBox : RichTextBox

V>...

  1. А с переносами строк работает?
  2. А если текст хорошенько сдобрен форматированием (размеры шрифтов)?
... << Anywhere but home :: Hello, I'm your mind >>
Re[3]: Неизвестное количество текста в richtextbox без скрол
От: Аноним  
Дата: 16.09.05 17:25
Оценка:
> 1. А с переносами строк работает?
2. А если текст хорошенько сдобрен форматированием (размеры шрифтов)?

Пример — это не решение проблемы. Но из примера видно в какую сторону копать, т.е. переопределить метод OnContentsResized
---
мои работы (конкурс 2005): LayeredWindow, Lens, MenuBuilder, Win32ResourceManager, Html2XmlConverter, DropDownHolder (Popup).


данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение
Re[4]: Неизвестное количество текста в richtextbox без скрол
От: _Андрей_  
Дата: 17.09.05 14:34
Оценка:
Здравствуйте, Varg, Вы писали:

V>> 1. А с переносами строк работает?

V>2. А если текст хорошенько сдобрен форматированием (размеры шрифтов)?

V>Пример — это не решение проблемы. Но из примера видно в какую сторону копать, т.е. переопределить метод OnContentsResized


V>
данное сообщение получено с www.gotdotnet.ru

V>ссылка на оригинальное сообщение


спасиба.. будем копать
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.