У меня есть такой класс:
private class MyClass {
[DisplayName("Foo/Bar")]
public string FooBar { get; private set; }
public string Baz { get; private set; }
public bool Enabled;
}
Когда я создаю List<MyClass>
и назначаю его DataSource
из DataGridView
, сетка показывает мне два столбца: «Foo/Bar» и «Baz». Это то, что я хочу, чтобы произошло.
В настоящее время это работает, потому что Enabled — это поле, а не свойство — DataGridView будет собирать только свойства. Однако это грязный хак.
Я бы тоже хотел сделать Enabled свойством, но все же скрыть его в DataGridView.
Я знаю, что могу вручную удалить столбец после привязки... но это не идеально.
Есть ли атрибут, похожий на DisplayName, которым я могу пометить свойство? Что-то вроде [Visible(false)]
?