Как обернуть текст в столбец, используя ObjectListView - PullRequest
1 голос
/ 16 апреля 2010

Например, у меня есть большое предложение:

"Я люблю есть пирог и веселиться по дому целый день!" И я хочу, чтобы это выглядело так:

«Мне нравится есть пирог и есть все вокруг дома день! "

В этом посте: Элементы многострочного списка в элементе управления WinForms ListView? Грамматик сказал, что вам нужно только включить WordWrap, но я не могу найти этот параметр.

Спасибо за помощь в продвинутом

1 Ответ

4 голосов
/ 18 апреля 2010

Каждый столбец имеет свойство WordWrap. Установите значение true, и текст этого столбца будет перенесен.

Помните, что список должен быть OwnerDrawn, чтобы упаковка была видимой.

РЕДАКТИРОВАТЬ: Я снова посмотрел сегодня, и вы совершенно правы - эта собственность исчезла! Я понятия не имею, куда он исчез. Я уверен, что это было раньше: (

OLVColumn должен иметь такое свойство:

    [Category("Behavior - ObjectListView"),
     Description("Draw this column cell's word wrapped"),
     DefaultValue(false)]
    public bool WordWrap {
        get { return wordWrap; }
        set { 
            wordWrap = value;
            if (wordWrap) {
                this.Renderer = new BaseRenderer();
                ((BaseRenderer)this.Renderer).CanWrap = true;
                ((BaseRenderer)this.Renderer).UseGdiTextRendering = false;
            } else {
                this.Renderer = null;
            }
        }
    }
    private bool wordWrap;

Вставьте это, и вы сможете обернуть слова в содержимое столбца.

...