Выбор уровня защиты для DataGridView
Недвижимость DataGridViewRowCollection
- это то, что я не могу понять. Он установлен в protected
, поэтому он не может получить его снаружи, что было бы естественным делом. Я не могу представить, чтобы кто-нибудь дал разумное объяснение этому, но, может быть, ... кто-нибудь?Почему свойство DataGridViewRowCollection.DataGridView защищено?
0
A
ответ
0
Я считаю, что stuartd прав насчет того, чтобы поощрять расширение DataGridViewRowCollection
по наследству, а не по методам расширения. Мне показалось странным, поскольку я думал, что нет возможности заменить DataGridView
Rows
собственностью с вашей собственной реализацией. Оказывается, есть способ сделать это, и он называется protected void CreateRowsInstance()
- метод DataGridView
, поэтому, по крайней мере, немного разумно разместить свойство DataGridView
в защищенной области.
Смежные вопросы
- 1. Почему свойство DoubleBuffered по умолчанию имеет значение false в DataGridView и почему оно защищено?
- 2. Доступ защищено событие TWinControl
- 3. Весеннее приложение не защищено
- 4. Защищено паролем excel
- 5. Что защищено от JWT?
- 6. Почему исключение TypeError защищено с помощью оператора && в JavaScript?
- 7. Как защищено хранилище ключей Android?
- 8. Количество массивов внутри объекта/защищено
- 9. Проверьте, защищено ли удаленное изображение
- 10. Свойство «foo» защищено и доступно только через экземпляр класса «Foo» (в случаях Foo)
- 11. В TypeScript, как я могу исправить ошибку, «свойство ____ защищено и доступно только в классе ____»?
- 12. Symfony2: как проверить, защищено ли действие?
- 13. Веб-приложение - защищено в защищенном паролем каталоге?
- 14. Как мы можем проверить, защищено ли устройство?
- 15. Django: Убедитесь, что соединение защищено от шаблона?
- 16. Защищено ли sys_call_table в ядре 4.8?
- 17. красное черное дерево в ядре не защищено?
- 18. Как приложение IBM MobileFirst защищено от фишинга?
- 19. Как показать изображение, которое защищено http-аутентификацией
- 20. Почему XMLEncoder пропускает свойство?
- 21. Почему прекращено свойство нити?
- 22. Почему свойство объекта null?
- 23. Почему свойство Logins null?
- 24. Почему CurrentCulture - свойство Thread?
- 25. Почему свойство PropertyChangedEventHandler null?
- 26. Конфигурация службы WCF Странное поведение - сообщение запроса должно быть защищено
- 27. Почему это уже свойство окна?
- 28. Почему это свойство быстрого сортировки?
- 29. Почему UIImagePickerController игнорирует свойство videoQuality?
- 30. Почему свойство тега не обновляется?
Поскольку при нормальном использовании вам не нужно обращаться к DataGridView из строки, потому что у вас уже есть ссылка на него. Однако вы реализуете пользовательский DataGridViewRowCollection (если такая возможность даже возможна), вам нужно будет иметь доступ к родительскому элементу. – stuartd
На самом деле то же самое свойство в 'DataGridViewRow' является' public'. Более естественным способом расширения 'DataGridViewRowCollection' было бы использование методов расширения, поскольку даже если бы я расширил его по наследованию, я не смог бы заменить свойство' Rows' 'DataGridView'. Таким образом, наследование имеет смысл, если я реализую совершенно новый элемент управления, но зачем мне использовать «DataGridViewRowCollection» в этом случае вместо моей собственной коллекции? –