Привязка данных иерархии к сетке в приложении Windows - PullRequest
0 голосов
/ 16 февраля 2012

У меня есть такие настройки данных ..

Транзакция
-Имя
-ID
-Количество
-Tags <- Массив тегов <br>- Имя

На веб-сайте я мог бы просто проходить по тэгам и создавать пролеты каждого тэга со ссылкой. Я пытаюсь выяснить, как добавить эту структуру в приложение формы Windows внутри XtraGrid (DevExpress)

Желая, чтобы это было так ..

ID Имя Количество тегов
1 MyTran 13.02 tag1 tag2 <- каждый тег будет меткой связи с отдельными вызовами событий </p>

Я не уверен, как это сделать.

1 Ответ

1 голос
/ 22 февраля 2012

Вы можете использовать Событие GridView.CustomDrawCell для форматирования отображаемого текста, но вам не следует редактировать эти теги с помощью редакторов вида сетки.Вы можете изменить отображаемый текст ячейки (параметр RowCellCustomDrawEventArgs.DisplayText .

private void advBandedGridView1_CustomDrawCell(object sender, RowCellCustomDrawEventArgs e) 
{
    //GridView currentView = sender as GridView;
    //if(e.RowHandle == currentView.FocusedRowHandle) return;
    if (e.Column.FieldName != "Tags") return;
    string[] arr = (string[])e.CellValue;
    string csv = String.join(',', arr);

    e.DisplayText = csv;
    // set e.Handles to true if you want custom drawing..
    e.Handled = true;
}

Проверить ссылки на пользовательские секции чертежа, указанные в GridView.CustomDrawCell Event документацииpage.

Другой подход заключается в том, что вы сохраняете разделенные запятыми теги в своей таблице, которую связываете с помощью элемента управления сеткой. Затем вы можете редактировать их без проблем. У вас есть дескриптор update, вставьте событие с некоторыми настройкамии это будет намного лучше, чем отображение пользовательского текста.

Выберите, какой подход лучше вам подходит. Надеюсь, эта помощь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...