На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
  
> Работа с данными в проекте WPF Visual Studio с помощью ADO.NET Entity Framework
    Сделал локальную базу данных SQL Compact, на основе ее создал модель ADO.NET, расположил данные на форме и запустил приложение. Внешний вид приложения оказался не тем, как я ожидал:
    - плоские таблицы без строки со звездочкой для добавления новой строки;
    - нет строки с кнопками навигации, удаления и сохранения;
    - не нашел возможности создания binding source для связи двух таблиц. В приложении Windows Forms при размещении на форме DataGrid добалялись BindingSource и BindingNavigator.
    Подскажите, пожалуйста, как сделать вид таблицы подобной таблице Windows Form и как создать элементы для связи и навигации.
    Прикреплённый файлПрикреплённый файлMyWpf_01.zip (22,17 Кбайт, скачиваний: 200)
    Сообщение отредактировано: tumanovalex -
      Ваша проблема в том что вы пытаетесь рассматривать программирование на WPF с таким подходом как это работает в Windows Forms. Здесь такое не работает. Вторая проблема заключается в том что вы путаете ADO.NET и EF. Это не одно и то же. Если вы хотите все эти контролы использовать в WPF, то таких контролов нет. Есть в .NET 4.0 контрол DataGrid который работает с БД так как нужно. Но он не работает так как Windows Forms. Посмотрите как работает байндинг в WPF, и после того когда поймете что модель разработки под WPF отличается от Windows Forms, тогда у вас что-то выйдет. Испортить программу на WPF гораздо проще чем сделать нормально, если вы не уверены в своих силах, напишите на Windows Forms, так будет вам быстрее и проще.
        Спасибо за ответ. Хотелось бы все-таки сделать в именно в WPF нормальную связь с данными. Попробую найти информацию по этому вопросу.
          Цитата tumanovalex @
          Спасибо за ответ. Хотелось бы все-таки сделать в именно в WPF нормальную связь с данными. Попробую найти информацию по этому вопросу.

          Я вас не обманываю. По умолчанию в WPF есть только DataGrid. Но если у вас есть возможность использовать сторонние контролы, то посмотрите на codeplex. Возможно там что-то сможете найти. Просто у меня фирме используем DevExpress и Telerik, поэтому с выбором контролов проблем не было.
            1. Да я и не думал, что Вы обманываете. Просто думал, что есть обходные пути.
            2. Вот как я понял назначение Entity Framework и LinQ:
            - Entity Framework позволяет преобразовать различные модели данных (работу с данными через SQL, работа с XML и др.) в единую объектную модель;
            - LinQ позволяет манипулировать этими объектами (единообразно для различных источников данных).
            Правильно?
            3. Решил на время отложить освоение WPF и попробовал создать простой проект в Windows Form.
            Попробовал сделать простое приложение из двух связанных таблиц. Возникли следующие вопросы:
            - Как сделать так, чтобы при добавлении контакта и телефона происходила автонумерация ключевого поля?
            - Как сделать связь один-ко-многим между контактами и телефонами в приложении, т.е. при выборе контакта в таблицы Телефоны показывались бы только телефоны выбранного контакта?
            - Как сделать так, чтобы при добавлении телефона в связанное поле размещался бы уникальных номер контакта?
            - Хотелось бы сделать навигатор и для таблицы телефонов и разместить его над этой таблицей. Попробовал из панели элементов расположить на форме навигатор, он прилепился сразу к первому навигатору. Можно ли решить эту задачу? Проект прикрепляю
            Прикреплённый файлПрикреплённый файлMyBase.zip (27,68 Кбайт, скачиваний: 189)
            0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
            0 пользователей:


            Рейтинг@Mail.ru
            [ Script execution time: 0,0220 ]   [ 19 queries used ]   [ Generated: 19.04.24, 21:30 GMT ]