[.NET] Нужен компонент для VS

nik93

Некий аналог Grid, но чтобы в ячейках можно было отображать RichText(верхний и нижний индексы)
Такое есть или нужно писать самому? :crazy:

Alexander08

RichText(верхний и нижний индексы)
что это значит?

nik93

RichText(верхний и нижний индексы)
текст с форматированием RTF. В частности мне нужна возможность писать в ячейках верхний и нижний индексы

nik93

http://msdn2.microsoft.com/en-us/library/7tas5c80.aspx#Mtps_...
Спасибо! Поизучаю :)
Но может у кого есть уже готовый компонент?

Alexander08

Спасибо! Поизучаю
Но может у кого есть уже готовый компонент?
врядли...
почитай тут, тут подробней и на русском, и сделать то, что ты хочешь совсем не сложно...
http://rsdn.ru/article/dotnet/DataGridView20.xml
http://rsdn.ru/article/dotnet/DataGridView20part2.xml

nik93

Похоже все не так просто.
Во всех приведенных статьях авторы идут по легкому пути - привязывают к событию редактирования ячейки появление произвольного контрола (легко сделать с помощью метода InitializeEditingControl
вводят в этот контрол данные, а затем, с помощью конвертора, преобразовывают введенные данные в обычный string и отображают их в колонке формата TextBox.
...В нем нам будут передавать объект-паспорт, мы будем "красиво" раскладывать его
свойства в форматированной строке и возвращать последнюю. А как управляться с ней,
DataGridViewTextBoxCell и сама знает...

Как и у авторов статей у меня получилось сделать так, чтобы при редактировании в ячейке отображался RichTextBox, для этого нужно написать всего 10к строк, но мне нужно чтобы он был там постоянно, а не только при редактировании, как описывается в этих статьях. Другого способа это сделать кроме как с помощью перегрузки метода Paint класса производного от DataGridViewCell я не придумал, может кто знает лучший способ?
ЗЫ: Если всетаки вручную отрисовывать усовершенствованный вариант TextBox с верхними и нижними индексами, то как это лучше сделать, чтоб выглядело как в ворде? Есть какие-нибудь статьи на эту тему?

timefim

но мне нужно чтобы он был там постоянно, а не только при редактировании, как описывается в этих статьях.
У комбобокса есть свойство DisplayStyle, посмотри как там сделано.

nik93

У комбобокса есть свойство DisplayStyle, посмотри как там сделано.
А где взять его внутренности? Go to defenition переводит только на заголовок, мяса там нету :crazy:

timefim

В ближайшее время МС откроет исходники. Если не терпит то отстается только Reflector.

nik93

В ближайшее время это когда?
Вроде уже не горит, т.к. я нашел один способ, рботает конечно не очень аккуратно, но для моих целей пока наверное хватит. Смысл в том, чтобы перегрузить метод Paint от TextBoxCell, подставив в него Graphics от сгенерированного в памяти RichTextBox, размерами, равными размеру ячейки. У меня уже получилось это все запустить, но есть мелкие баги связанные с выделением.
Если интересно, то обсуждение тут http://forums.microsoft.com/msdn/showpost.aspx?postid=3056&a...

timefim

В ближайшее время это когда?
Вроде в это месяце.

nik93

а где их можно будет скачать или они сами в VS откроются, по мановению волшебной палочки Била? :grin:

timefim

http://weblogs.asp.net/scottgu/archive/2007/10/03/releasing-...
В этом же блоге стоит ожидать информацию о релизе.
Оставить комментарий
Имя или ник:
Комментарий: