Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# Windows Forms
Войти
Регистрация
Восстановить пароль
 
Askar2008
13 / 13 / 7
Регистрация: 04.03.2009
Сообщений: 154
1

Выбрать строки из таблицы "orders" и вывести в dataGrid

29.02.2012, 11:10. Просмотров 622. Ответов 0
Метки нет (Все метки)

привет, не могу разобраться с компонентом datagrid
мне нужно выбрать строки из таблицы "orders" и вывести в datagrid.

вот код который выводит только 3 столбца
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
namespace AdministrativeApp
{
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
 
           // grid.AutoGenerateColumns = false;
            var dataGridBuilder = new DynamicDataGridBuilder<MenuModelContainer, Order>();
            dataGridBuilder.BuildColumns(grid);
 
            var entityContext = new MenuModelContainer();
            DataContext = entityContext.Orders;
 
        }
    }
}
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
using System.Data.Objects.DataClasses;
using System.Linq;
using System.Web.DynamicData;
using System.Windows.Controls;
using System.Windows.Data;
 
namespace AdministrativeApp.Generic
{
    public class DynamicDataGridBuilder<TContext, TEntity> where TEntity : EntityObject
    {
        readonly MetaModel _model = new MetaModel();
        public DynamicDataGridBuilder()
        {            
            _model.RegisterContext(typeof(TContext), new ContextConfiguration { ScaffoldAllTables = true });
        }
 
        public void BuildColumns(DataGrid targetGrid)
        {
            MetaTable metaTable = _model.GetTable(typeof(TEntity));
 
            // Decision whether to auto-generated columns still rests with the caller.
            targetGrid.Columns.Clear();
            foreach (var metaColumn in metaTable.Columns.Where(x => x.GetType().Name == "MetaColumn" && x.Scaffold))      
            {
                switch (metaColumn.Name)
                {
                    case "State":
                        targetGrid.Columns.Add(new DynamicDataGridTextColumn { MetaColumn = metaColumn, Binding = new Binding(metaColumn.Name), Header = metaColumn.DisplayName });
                        break;
                    default:
                        switch (metaColumn.ColumnType.Name)
                        {
                            case "Boolean":
                                targetGrid.Columns.Add(new DataGridCheckBoxColumn { Binding = new Binding(metaColumn.Name), Header = metaColumn.DisplayName });
                                break;
                            default:
                                targetGrid.Columns.Add(new DynamicDataGridTextColumn { MetaColumn = metaColumn, Binding = new Binding(metaColumn.Name), Header = metaColumn.DisplayName });
                                break;
                        }
                        break;
                }
            }
        }
    }
}

XML
1
2
3
4
5
6
7
8
9
10
11
<Window x:Class="AdministrativeApp.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525">
    <StackPanel>
 
        <DataGrid Name="grid" ItemsSource="{Binding}" AutoGenerateColumns = "false">
 
        </DataGrid>
    </StackPanel>
</Window>
мне сказали. можно убрать строки
C#
1
2
  var dataGridBuilder = new DynamicDataGridBuilder<MenuModelContainer, Order>();
            dataGridBuilder.BuildColumns(grid);
и с помощью конструкций типа
XML
1
2
3
4
5
6
7
8
9
10
11
<DataGrid ItemsSource="{Binding Customers}" AutoGenerateColumns="False" >
    <DataGrid.Columns>
        <DataGridTemplateColumn Header="Image" Width="SizeToCells" IsReadOnly="True">
            <DataGridTemplateColumn.CellTemplate>
                <DataTemplate>
                    <Image Source="{Binding Image}" />
                </DataTemplate>
            </DataGridTemplateColumn.CellTemplate>
            </DataGridTemplateColumn>
    </DataGrid.Columns>
</DataGrid>
вывести нужные данные, я в этом деле новичок, раньше программировал только на делфи, помогите пожалуйста
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.02.2012, 11:10
Ответы с готовыми решениями:

При вводе в RichTexBox1 слова "******", нужно вывести в RichTextBox2 "етивпр"
Ребят, при вводе в RichTexBox1 слова &quot;Привет&quot;, я хочу что бы он в RichTextBox2...

Как удалить строки от "<" и до ">" из компонента richTextBox
Здравствуйте. У меня вопрос. А как можно в компоненте richTextBox построчно...

Импорт из Excel в DataGrid. Вместо значения ячеек выводится "System.__ComObject"
Почему при импорте из Excel вместо текста и цифр выводится такая...

Классы "Работник", "Календарь", "Оплата труда за месяц". Вывод табеля рабочего времени сотрудника
1. Реализовать класс работник, у класса свойства фамилия (строка), имя...

Ошибка после конвертации метода на С++ к С#: "Неявное преобразование типа "int" в "bool" невозможно"
Ошибка после преобразования метода на С++ к С#: &quot;Неявное преобразование типа...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.02.2012, 11:10

Ошибка CS0019: Оператор "*" не может применяться к операндам типа "decimal" и "float"
Здравствуйте! Писал приложение и наткнулся на интересную ошибку (честно говоря,...

Кнопки "свернуть", "развернуть", "закрыть" на панель, которая используется вместо бордюра
используя форму без бордюров решил добавить кнопки...

Как исправить "преобразование типа из "string" в "System.Net.IPEndPoint" невозможно"?
Здравствуйте, не могу отправить массив байт, может кто-то знает как правильно...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru