Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.01.2013, 15:16   #1
Snake22
Пользователь
 
Регистрация: 06.01.2011
Сообщений: 22
По умолчанию своя высота итемов в listbox

помогите с данной задачкой.как изменить высоту итемов в листбоксе?
(у меня подразумевается что один итем состоит из двух строчек текста,поэтоу надо чтоб обе строки влезли,для этого надо увеличить высоту)
нужно сделать чтоб выглядело так:


я же никак не могу задуманное сделать,что ни пробовал всё время тока первый итем нормально делается,остальные как обыно идут, занимая свою стандартную высоту.
использова такой код:
PHP код:
private void listBox1_DrawItem(object senderDrawItemEventArgs e)
        {
            
Rectangle myBounds;
            
brText = new SolidBrush(e.ForeColor);
            
brBack = new SolidBrush(e.BackColor);
            
myfont = new Font(e.Font,e.Font.Style);
            
myBounds e.Bounds;

            if (
e.Index>0//если это не первый итем то сделаем отступ сверху по размеру заданной нами высоты
                
myBounds.Offset(0myBounds.26);
            
            
myBounds.Height 26;           
           
            
SolidBrush brText null;
            
SolidBrush brBack null;
            
Font myfont null;


            
            
//string value = (string)listBox1.Items[e.Index];
            // e.Graphics.DrawString(value.ToString(), e.Font, brText, e.Bounds);

            
e.Graphics.FillRectangle(brBackmyBounds); //при выделении
            
e.Graphics.DrawString("Заголовок"myfontbrTextmyBounds);
            
myBounds.Offset(10myBounds.10);

            
myfont = new Font(e.FontFontStyle.Bold FontStyle.Italic);// вторую строчку жирной курсивной
            
e.Graphics.DrawString("Текст"myfontbrTextmyBounds);

        } 
результат:

Последний раз редактировалось Snake22; 24.01.2013 в 15:29.
Snake22 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
используя процедуру keypress и фунцию listbox.при нажатии на listbox менялась ее высота Алекс38 Общие вопросы Delphi 1 19.09.2012 19:36
Подсветка итемов ComboBox при наведении мыши [MoNAMur] Компоненты Delphi 1 02.08.2012 23:57
CheckListBox - копирование итемов flug Общие вопросы Delphi 1 20.05.2010 08:43
Как узнать индексы выделенных итемов в ListView при OwnerData? 3D Hunter Общие вопросы Delphi 3 02.10.2009 10:24
Узнать количество итемов в ListView... TwiX Общие вопросы Delphi 10 02.08.2009 14:31