Автонумерация строк в ListBox

263
19 ноября 2017, 13:20

Есть ListBox. WinForm. В него добавляются / удаляются записи. В качестве источника данных использую List<string> QuestionsList; lbAnswers.DataSource = QuestionsList;

Как в этой ситуации сделать автонумерация строк вот такого характера. Т.е при выводе добавить префикс в виде номера.

Может событие какое или нужно наследоваться от него и пилить свою логику для добавления записай или может есть другие варианты?

Answer 1

Нашел событие Format и мне это подходит

private void lbAnswers_Format(object sender, ListControlConvertEventArgs e)
        {
            Question ques = e.ListItem as Question;
            if (ques != null)
            {
                var items = (sender as ListControl).DataSource as IList<Question>;
                if (items != null)
                    e.Value = items.IndexOf(ques) + 1 + ". " + ques.Text;
            }
        }
READ ALSO
Как унаследовать интерфейс от класса?

Как унаследовать интерфейс от класса?

Есть два класса, наследника стандартных элементов управления winformsОба класса реализуют мой интерфейс IMyControl

304
Получить реальный размер формы

Получить реальный размер формы

Хочу получить размеры формы когда она полностью развёрнута

233
IQueryable в Entity Framework

IQueryable в Entity Framework

Я так поняла, что если у меня данные IQueryable, то запрос выполняется, только когда я вызываю методы Count(), ToList() и подобные, либо начинаю перебирать...

211