| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Разработка Windows Forms > DataGridView scroll |
| Автор: atas 23.5.2008, 20:11 | ||
| Всем привет! Подскажите пожалуйста, у меня проблема с dataGridView неотображаются скрулы. на форме dataGridView не помешен ни в какой контейнер (panel и т.п.). события на загрузку формы (Была попитка активироват скрул в ручную и через свойства):
Свойства dataGridView установлены в: AutoSizeColumnsMode = ColumnHeader AllowUserToAddRows = false ColumnHeadersHeightSizeMode = AutoSize Dock = Fill MaltySelect = false ReadOnly = True SelectionMode = FullRowSelect осталные свойства по умолчанию Добавление новых рядов программно. Спасибо |
| Автор: Linus 24.5.2008, 22:55 |
| При тех установках, что Вы привели, всё должно работать. Возможно Вы в дизайнере выставили ещё какие-то свойства? Может AutoSizeColumnMode там в Fill, или ещё что-то? |
| Автор: atas 25.5.2008, 02:05 |
| Linus спасибо что Вы ответили, но у меня AutoSizeColumnsMode = ColumnHeader как я и писал выше, я попробывал разные варианты с этим свойством, скрул не появлялся. Будут другие идеи? Спасибо. |
| Автор: Linus 25.5.2008, 14:19 |
| Попробуйте выкинуть грид из формы и кинуть его опять из ToolBox, проделать те же операции, что Вы писали в 1-м посте. По крайней мере у меня отлично заработало. Либо, если не сложно, скиньте проект с этой формой сюда, чтоб можно было поглядеть |
| Автор: atas 25.5.2008, 19:50 |
| Linus спасибо Вам за участие. Грид выкидивал из формы, а новый с тулбара вставлял, и настраивал все выше перечисленные свойства, но скрул НЕ появился. Прикрепляю проект с формой(Clients) где не работает скрул у грида. Скрул правда у меня нигде не работает, но для этой формы это особенно критично. Database - MS SQL Express Смотреть форму с гридом через меню: M.A.J. Maitres -> Mises a joure -> Clients Архив разбил на три части так как Максимальный размер прикрепляемого файла 1мб Спасибо |
| Автор: atas 25.5.2008, 19:52 |
| Архив часть вторая: |
| Автор: atas 25.5.2008, 19:53 |
| Архив част третья |
| Автор: Linus 26.5.2008, 09:14 | ||
| atas, всё у Вас работает, просто у грида Вы выставили Dock = Fill, после чего у panel2 выставили Dock = Bottom. Таким образом, у Вас panel2 перекрывает нижнюю часть грида, и Вы не видите нижний скроллбар. Проблему можно решить, к примеру, якорями или сплиттером. P.S. Извините, может не туда лезу, но, возможно, Вам стоит поглядеть на ORM (например, NHibernate), чтобы облегчить разработку DataLayer. P.P.S. Если уж совсем не хотите использовать ORM, то к хранимкам проще обращаться так:
|
| Автор: atas 26.5.2008, 14:24 |
| Linus спасибо, все заработало. это мой первый проект на WinForms, поэтому попадаются вот такие ошибки. И архитектуру надо дорабатывать (исползовать тот же ORM). Сейчас стою перед выбором НХибернат или LINQ. |
| Автор: Linus 26.5.2008, 16:22 |
| Ну LINQ - это не ORM. Тем более NHibernate можно использовать вместе с LINQ. Можно один раз написать хороший слой доступа к данным и забыть о том, что такое многосчисленные хранимые процедуры с дублирующимся кодом для каждой операции вставки/обновления/выборки на сервере. Хотя и некоторые минусы в этом подходе есть. |