#c# #winforms #datagridview
#c# #winforms #datagridview
Вопрос:
У меня есть это определение в WinForm:
private BindingList<String> rollbackLog = new BindingList<String>();
У меня есть DataGridView с одним столбцом, и я хочу привязать этот столбец к этому списку. Проблема, с которой я сталкиваюсь, заключается в том, что я не знаю, что назначить свойству DataPropertyName столбца. т.е. я не думаю, что есть свойство «string», которое вернет значение?
Должен ли я определять свой собственный класс со свойством string, а затем читать из него?
Использование ListBox было бы предпочтительным вариантом, учитывая, что у меня есть только одно свойство, но в конечном итоге это больше неинтересно.
Комментарии:
1. Поскольку у вас есть только один столбец, вы не можете использовать ListView?
2. Да, вы тоже правы. Я думаю, что начал использовать Datagrid, потому что изначально у меня было несколько столбцов, но затем вернул его обратно в один столбец, но не стал менять свой элемент управления…
Ответ №1:
Вы могли бы использовать простой класс-оболочку
class Foo
{
public string SomeProperty {get; set;}
}
и использовать
private BindingList<Foo> rollbackLog = new BindingList<Foo>();
и установите DataPropertyName
значение "SomeProperty"
.
Комментарии:
1. Да. Спасибо. Я пытался наследовать от строки, которая, очевидно, не работает. Потом я совсем запутался. Я приму, как только мне разрешат!
2. Я боялся этого ответа. <whine> Почему они должны были сделать строку запечатанной, чтобы мы не могли наследовать оболочку? </whine>