powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / DataGrid + WPF
43 сообщений из 43, показаны все 2 страниц
DataGrid + WPF
    #36321033
DATAGRID_WPF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Помнится в WinForms у DataGridView был виртуальный режим отображения данных http://msdn.microsoft.com/ru-ru/library/ms171622.aspx. Есть ли что-то подобное у DataGrid в WPF? Если нет, то каким же образом, например, обрабатывать крупные объёмы данных?
PS Про то, что грузить на клиента большое кол-во записей нет смысла, знаю!
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36321507
eJack
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DATAGRID_WPF,

ListView.View = GridView

и еще есть DataGrid в wpftoolkit
http://wpf.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=29117
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36321581
koJIo6ok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
eJack,
объясникте плз что такое wpftoolkit? вы пишите что там есть DataGrid - те можно скачать поставить и будет в приложении WPF датагрид аналог datagridview c winforms?
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36322642
toolkit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
koJIo6ok,

Вам тоже злой админ отключил гугл?

http://wpf.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=29117
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36322733
koJIo6ok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я сам админ
помогите разобраться с ним плз, на winforms у меня было
Код: plaintext
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.
//plan
With Me.DataSet1.Tables.Add("plan")
.Columns.Add("id_plg", GetType(Integer))
.Columns.Add("id_org_ob", GetType(Integer)).Unique = True
.Columns.Add("План на год, руб.", GetType(Decimal)).DefaultValue = 0
.Columns.Add("Оборудование в том числе, руб.", GetType(Decimal)).DefaultValue = 0
.PrimaryKey = New DataColumn() {.Columns.Item(0)}
.Columns.Item(0).AutoIncrement = True
.Columns.Item(0).AutoIncrementSeed = -1
.Columns.Item(0).AutoIncrementStep = -1
.Columns.Item(2).AllowDBNull = False
.Columns.Item(3).AllowDBNull = False
End With
Dim tableMap As DataTableMapping
tableMap = Me.SqlDataAdapter1.TableMappings.Add("Table1", "sp")
tableMap = Me.SqlDataAdapter1.TableMappings.Add("Table", "plan")
Dim columnMaps = New DataColumnMapping() _
{New DataColumnMapping("id_plg", "id_plg"), _
New DataColumnMapping("id_org_ob", "id_org_ob"), _
New DataColumnMapping("plan_o", "План на год, руб."), _
New DataColumnMapping("obor_o", "Оборудование в том числе, руб.")}
tableMap.ColumnMappings.AddRange(columnMaps)
//sp_fil
With Me.DataSet1.Tables.Add("sp")
.Columns.Add("id_na_ob", GetType(Integer))
.Columns.Add("nazv", GetType(String))
End With
//подст столбец
Dim col As New DataGridViewComboBoxColumn
col.Name = "podst_nazv"
col.HeaderText = "Название организации"
col.DataPropertyName = "id_org_ob"
col.DataSource = Me.DataSet1.Tables(1)
col.DisplayMember = "nazv"
col.ValueMember = "id_na_ob"
col.DisplayStyle = DataGridViewComboBoxDisplayStyle.ComboBox
col.MaxDropDownItems = 6
Me.DataGridView1.Columns.Add(col)
//select command plan
cn.Open()
Me.SqlDataAdapter1.Fill(Me.DataSet1)
cn.Close()
                
Me.BindingSource1.DataSource = Me.DataSet1.Tables(0)
Me.DataGridView1.Columns.Item(0).Visible = False
здесь же никак не могу пристроить комбобокс колумн
Код: plaintext
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.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
void myDgColumnAdd()
{
   DataTemplate dt;
   Binding bind;
   string _strFormat = "{0:N1}";
   //0
   dt = new DataTemplate(typeof(string));
   FrameworkElementFactory factoryTXT = new FrameworkElementFactory(typeof(TextBlock));
   bind = new Binding("[0]") { Mode = BindingMode.TwoWay };
   factoryTXT.SetBinding(TextBlock.TextProperty, bind); 
   dt.VisualTree = factoryTXT;
   DataGridTemplateColumn txtCol = new DataGridTemplateColumn { Header = "id_plg", CellTemplate = dt };
   myDg.Columns.Add(txtCol);
   // 1
   dt = new DataTemplate(typeof(string));
   factoryTXT = new FrameworkElementFactory(typeof(TextBlock));
   bind = new Binding("[1]") { Mode = BindingMode.TwoWay };
   factoryTXT.SetBinding(TextBlock.TextProperty, bind); 
   dt.VisualTree = factoryTXT;
   txtCol = new DataGridTemplateColumn { Header = "id_org_ob", CellTemplate = dt };                     
   myDg.Columns.Add(txtCol);
   // 2
   dt = new DataTemplate(typeof(string));
   factoryTXT = new FrameworkElementFactory(typeof(TextBox));
   factoryTXT.SetValue(TextBox.TextAlignmentProperty, TextAlignment.Right);            
   bind = new Binding("[2]")
      {
         Converter = new myConverter(),
         ConverterParameter = _strFormat,
         Mode = BindingMode.TwoWay
      };
   factoryTXT.SetBinding(TextBox.TextProperty, bind);  
   dt.VisualTree = factoryTXT;
   txtCol = new DataGridTemplateColumn { Header = "План на год, руб.", CellTemplate = dt };                     
   myDg.Columns.Add(txtCol);
   // 3
   dt = new DataTemplate(typeof(string));
   factoryTXT = new FrameworkElementFactory(typeof(TextBox));
   factoryTXT.SetValue(TextBox.TextAlignmentProperty, TextAlignment.Right);            
   bind = new Binding("[3]")
      {
      Converter = new myConverter(),
      ConverterParameter = _strFormat,
      Mode = BindingMode.TwoWay
      };
   factoryTXT.SetBinding(TextBox.TextProperty, bind);
   dt.VisualTree = factoryTXT;
   txtCol = new DataGridTemplateColumn { Header = "Оборудование в том числе, руб.", CellTemplate = dt };                      
   myDg.Columns.Add(txtCol);
   // комбобокс, что знал то и написал - в итоге канешн не рабоает :)))
   DataGridComboBoxColumn cbCol = new DataGridComboBoxColumn();            
   cbCol.Header = "Название организации";
   cbCol.ItemsSource = ds.Tables[1].Rows;
   cbCol.SelectedValuePath = "id";
   cbCol.DisplayMemberPath = "name";
   cbCol.SelectedItemBinding = new Binding("id");
   cbCol.TextBinding = new Binding("[1]");            
   myDg.Columns.Add(cbCol);
   }
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36323027
koJIo6ok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
никто его не использовал что-ли?
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36323291
koJIo6ok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
получается задать столбец с комбобоксом - но он не привязан к данным строки
и получается задать столбез связанный с данными строки но без комбобокса
чего не хватает?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
dt = new DataTemplate();
factoryTXT = new FrameworkElementFactory(typeof(ComboBox));
factoryTXT.SetValue(ComboBox.ItemsSourceProperty, ds.Tables[1].Rows);
factoryTXT.SetValue(ComboBox.SelectedValuePathProperty, "[0]");
factoryTXT.SetValue(ComboBox.DisplayMemberPathProperty, "[1]");                        
dt.VisualTree = factoryTXT;
txtCol = new DataGridTemplateColumn { Header = "Название организации", CellTemplate = dt };            
myDg.Columns.Add(txtCol);
// комбобокс
DataGridComboBoxColumn cbCol = new DataGridComboBoxColumn { Header = "Название организации" };
cbCol.ItemsSource = ds.Tables[1].Rows;
cbCol.SelectedValuePath = "[0]";
cbCol.DisplayMemberPath = "[1]";
bind = new Binding("[1]")
   {                
      Mode = BindingMode.TwoWay
    };
cbCol.SelectedValueBinding = bind;                
myDg.Columns.Add(cbCol);
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36323401
koJIo6ok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну чего я такой темный
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36323402
koJIo6ok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
все же так просто
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36323682
eJack
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
koJIo6ok,

Учите xaml там с помощью шаблона все делается в три минуты и пять строчек кода :)
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36323686
eJack
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
<my:DataGrid Name="dataGrid1">
            <my:DataGrid.Columns>
                <my:DataGridTextColumn Header="ИД"/>
                <my:DataGridComboBoxColumn Header="Название организации" />
            </my:DataGrid.Columns>
        </my:DataGrid>
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36324138
koJIo6ok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
eJack,
там нечего учить, все просто но меня он бодрит
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36325044
eJack
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
koJIo6okeJack,
там нечего учить, все просто но меня он бодрит

Это так в начале - потом вообще от него не отторвешь - у меня одно время было я вообще хотел как можно больше написать на xaml. Потом прошло :)

Но он реально помогает в "написании" гуя - все просто и кратко и главное понятно. Посмотрите на свой код в шарпе - это ужас его сопровождать бррр....

Хотя если пишите для себя - то можно всё !
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36325086
koJIo6ok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
eJack,
что бы писать на xaml надо создавать окно? опять получится мульён форм отличающихся иногда минимально
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36325600
koJIo6ok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кто-нибудь связывал DataGrid и DataTable в BindingMode.TwoWay ?
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36326395
Фотография barrabas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
koJIo6okeJack,
что бы писать на xaml надо создавать окно? опять получится мульён форм отличающихся иногда минимально
нужно разносить отображение и работу с данными по разным сущностям, форма не должна знать про данные, она просто показывает. Всю работу по выборке данных и помещения их на форму, должен делать другой класс/классы, его и наследуй и изменяй как хочешь под задачу.
Например форма "справочник", это одни класс-окно с гридом, меню, кнопками ..., есть базовый класс управления формой справочника, в нем базовые вещи, виртуальные методы сохранения размеров окна и колонок в гриде, скрытия/отображения/добавяления кнопок меню, добавления колонок грида, заполнения данными, выгрузка в ексель, выбор поведения (возврат выбранного элемента/элементов или просто показ их) ...
И от базового класса наследуешься, переопределяешь заполнение, добавление добавляешь нужные колонки, выбираешь поведение - всё справочник готов.
однотиптые справочники штампуются за минукту.
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36326732
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не только форма не должна знать про данные, но и класс(ViewModel) не должен знать о форме.
авторсохранения размеров окна и колонок в гриде, скрытия/отображения/добавяления кнопок меню, добавления колонок грида, подобного функционала он не должен содержать.
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36326785
Фотография Roman S. Golubin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SeVaНе только форма не должна знать про данные, но и класс(ViewModel) не должен знать о форме.
Одновременно друг о друге совсем не знать они не могут. Для случая MVVM, View все знает о ViewModel, ViewModel ничего не знает о View.
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36327005
koJIo6ok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
господа, планета в опасности, а вы...
ну помогите связать DataTable и DataGrid
я сделал
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
ds.Tables.Add("plg");
// plg
ds.Tables[0].Columns.Add("id_plg", typeof(int));
ds.Tables[0].Columns.Add("id_org_ob", typeof(int));
ds.Tables[0].Columns.Add("plan_o", typeof(decimal)).DefaultValue = 0;
ds.Tables[0].Columns.Add("obor_o", typeof(decimal)).DefaultValue = 0;
ds.Tables[0].PrimaryKey = new DataColumn[] { ds.Tables[0].Columns[0] };
ds.Tables[0].Columns[0].AutoIncrement = true;
ds.Tables[0].Columns[0].AutoIncrementSeed = -1;
ds.Tables[0].Columns[0].AutoIncrementStep = -1;            
ds.Tables[0].Columns[1].Unique = true;
ds.Tables[0].Columns[2].AllowDBNull = false;
ds.Tables[0].Columns[3].AllowDBNull = false;
ds.EnforceConstraints = true;
// список 
ds.Tables.Add("sp");
ds.Tables[1].Columns.Add("id", typeof(int));
ds.Tables[1].Columns.Add("name", typeof(string));            
ds.Tables[1].PrimaryKey = new DataColumn[] { ds.Tables[1].Columns[0] };
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
void frmObjectOrgPlg_Loaded(object sender, RoutedEventArgs e)
        {
            dsSelect();
            myDgColumnAdd();
            myDg.DataContext = ds.Tables[0];
            Binding bind = new Binding()
            {
                Mode = BindingMode.TwoWay,
                Path = new PropertyPath(".")
            };

            myDg.SetBinding(DataGrid.ItemsSourceProperty, bind);     
        }   
Код: plaintext
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.
void myDgColumnAdd()
{            
   Binding bind;            
   // 0 комбобокс
   DataGridComboBoxColumn cbCol = new DataGridComboBoxColumn { Header = "Название организации" };
   cbCol.ItemsSource = ds.Tables[1].Rows;
   cbCol.SelectedValuePath = "[0]";
   cbCol.DisplayMemberPath = "[1]";
   bind = new Binding("[1]")
      {                
         Mode = BindingMode.TwoWay                
      };
   cbCol.SelectedValueBinding = bind;           
   myDg.Columns.Add(cbCol);                
   // 2
   bind = new Binding("[2]")
      {
         Converter = new myConverter(),
         ConverterParameter = "{0:N1}",
         Mode = BindingMode.TwoWay
      };
   bind.ValidationRules.Add(new AllDecimalRule(0, 999999999.9m));
   Style st = new Style();
   Setter settet = new Setter(DataGridCell.HorizontalAlignmentProperty, HorizontalAlignment.Stretch);
   st.Setters.Add(settet);
   DataGridTextColumn txtCol = new DataGridTextColumn { Header = "план на год, руб.", Binding = bind, CellStyle = st };
   myDg.Columns.Add(txtCol);      
   // 3
   bind = new Binding("[3]")
   {
      Converter = new myConverter(),
      ConverterParameter = "{0:N1}",
      Mode = BindingMode.TwoWay
   };
   bind.ValidationRules.Add(new AllDecimalRule(0, 999999999.9m));
   txtCol = new DataGridTextColumn { Header = "в т.ч. оборудование, руб.", Binding = bind, CellStyle = st };
   myDg.Columns.Add(txtCol);
}

но ограничения на таблице не работают, не подставляются значения по умолчанию в новую строку - привязка только в одну сторону выходит? в две не вышло из-за -
автор
Для появления уведомления об изменении привязки клиента и источника данных связанный тип должен:
Либо реализовать интерфейс INotifyPropertyChanged (предпочтительный вариант).
Либо обеспечить событие изменения для каждого свойства связанного типа.
Либо не выполнять ни то, ни другое.
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36327115
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman S. GolubinSeVaНе только форма не должна знать про данные, но и класс(ViewModel) не должен знать о форме.
Одновременно друг о друге совсем не знать они не могут. Для случая MVVM, View все знает о ViewModel, ViewModel ничего не знает о View.
Что знает подобное View о ViewModel?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
<navigation:Page x:Class="Shell.UIShell" 
///////        
   Title="UIShell Page">
    <Grid x:Name="LayoutRoot" Background="Black">
                <ItemsControl x:Name="MainRegion" cal:RegionManager.RegionName="MainRegion" />
                <ItemsControl x:Name="ActionsPaneRegion" cal:RegionManager.RegionName="ActionsPaneRegion" />
    </Grid>
</navigation:Page>

...
Рейтинг: 0 / 0
DataGrid + WPF
    #36327282
SokolNik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SeVa,

зачем ты с мусей общаешься
он ж дебил
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36327403
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SokolNikSeVa,

зачем ты с мусей общаешься
он ж дебил
Я и сам себе такой вопрос задаю, но достала эта хамка трамвайная.
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36327411
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DATAGRID_WPFПомнится в WinForms у DataGridView был виртуальный режим отображения данных http://msdn.microsoft.com/ru-ru/library/ms171622.aspx. Есть ли что-то подобное у DataGrid в WPF? Если нет, то каким же образом, например, обрабатывать крупные объёмы данных?
PS Про то, что грузить на клиента большое кол-во записей нет смысла, знаю!
Виртуализация данных в WPF не поддерживается контролами,народ изголяется по-разному
Инетерсная статья на эту тему Data virtualization .
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36327457
koJIo6ok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
спасибо что не отказали
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36327602
Фотография Roman S. Golubin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SeVaЧто знает подобное View о ViewModel?
Есть ли у этого View вообще ViewModel?
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36327843
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может быть любой и много.В Prims есть специальный адаптер для ItemsControl, в него можно добавлять любые View.
Если делать привязку данных не в коде,то у View может быть любой ViewModel и наоборот.В оптимальном варианте эта парачка не должна быть знакома.
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36328236
Фотография Roman S. Golubin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SeVaВ оптимальном варианте эта парачка не должна быть знакома.
Ага. В вакууме.

MVC:

MVC Passive View :

MVP:

MVVM:
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36328277
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman S. GolubinSeVaВ оптимальном варианте эта парачка не должна быть знакома.
Ага. В вакууме.

MVC:

MVC Passive View :

MVP:

MVVM:


Диаграмма правильная.В чем она по-твоему противоречит независимости?Двухсторонний binding позволяет в любой момент менять View и ViewModel.Приведи пример,когда View должна знать все о ViewModel.
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36328300
koJIo6ok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я расчитывал что с вас кто-то поможет а они тут утроили дебаты - создате себе тему и го туда
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36328311
Фотография Roman S. Golubin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SeVaДиаграмма правильная.В чем она по-твоему противоречит независимости?Двухсторонний binding позволяет в любой момент менять View и ViewModel.Приведи пример,когда View должна знать все о ViewModel.
И с каких пор "Позволяет менять" стало эквивалентно "Не знают друг о друге вообще ничего".
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36328370
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman S. GolubinSeVaДиаграмма правильная.В чем она по-твоему противоречит независимости?Двухсторонний binding позволяет в любой момент менять View и ViewModel.Приведи пример,когда View должна знать все о ViewModel.
И с каких пор "Позволяет менять" стало эквивалентно "Не знают друг о друге вообще ничего".
ViewModel точно может не знать ничего,а View только отображает данные(которые ей могут предоставлять кто угодно),позволяет вносить изменения в них,вызывает команды,которые могут выполнятся в любом месте.View совершенно не волнует бизнес-логика и работа с БД.В большенстве статей на тему MVVM всячески подчеркивается,что эта парочка может быть независимой и это рассматривается,как основное достоинтсво данного шаблона.
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36328390
Фотография Roman S. Golubin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SeVaViewModel точно может не знать ничего,а View только отображает данные(которые ей могут предоставлять кто угодно),позволяет вносить изменения в них,вызывает команды,которые могут выполнятся в любом месте.View совершенно не волнует бизнес-логика и работа с БД.В большенстве статей на тему MVVM всячески подчеркивается,что эта парочка может быть независимой и это рассматривается,как основное достоинтсво данного шаблона.
Ну вот. Наконец-то View начало требоваться знать о данных, которые она будет отображать, о командах, которые она будет выполнять. А то с ваших слов получалось, что View должен быть просто набором регионов в вакууме
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36328449
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman S. GolubinSeVaViewModel точно может не знать ничего,а View только отображает данные(которые ей могут предоставлять кто угодно),позволяет вносить изменения в них,вызывает команды,которые могут выполнятся в любом месте.View совершенно не волнует бизнес-логика и работа с БД.В большенстве статей на тему MVVM всячески подчеркивается,что эта парочка может быть независимой и это рассматривается,как основное достоинтсво данного шаблона.
Ну вот. Наконец-то View начало требоваться знать о данных, которые она будет отображать, о командах, которые она будет выполнять. А то с ваших слов получалось, что View должен быть просто набором регионов в вакууме
Это и так предполагалось(ты же сам давал ссылки на статью),но привязка к определенному типу полей и командам не требует детальных знаний о ViewModel.В том же Prism, контекстом View может быть абстрактный RegionContext.
PS Не будем из-за одного слова флейм заводить.Думаю,говорим об одном.
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36328478
Фотография Roman S. Golubin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SeVaPS Не будем из-за одного слова флейм заводить.Думаю,говорим об одном.
Говорим об одном? Ты говоришь, что V и VM не знают друг о друге ничего. Я говорю, что V знает о VM все, что необходимо для правильного отображения этой VM. И еще. M-V-VM - кто из них обеспечивает двусторонний байдинг в твоей модели? Мне кажется, что ты говоришь о MVC-PV - там да, действительно, View и Model не пересекаются. Но там есть контроллер, который эту связь обеспечивает.
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36328541
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Знает все, и знает все,что нужно для отображения данных - две большие разницы.ViewModel подготавливает данные,View хранит текущее состояние,двойной binding - фасад между ними и полностью скрывает детали реализации.Только он знает, в каком контроле из какого поля делать привязку и полностью разделяет эти две сущности
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36328867
Фотография Roman S. Golubin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SeVaЗнает все, и знает все,что нужно для отображения данных - две большие разницы.ViewModel подготавливает данные,View хранит текущее состояние,двойной binding - фасад между ними и полностью скрывает детали реализации.Только он знает, в каком контроле из какого поля делать привязку и полностью разделяет эти две сущности
То есть, в вашей схеме есть некий фасад между представлением и его моделью? Абстрактный класс, от которого наследует модель представления или что это такое?
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36329123
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
public partial class ProductsPage 
    {
        public ProductsPage()
        {
            InitializeComponent();
        }

       
    }
}
Где в этом классе для View есть ссылки на ViewModel? xaml можно грузить динамически и любой, в нем тоже нет явного указания на ViewModel.Их привязка делается уже в другой сущности - контроллере на момент исполнения.
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36329145
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
koJIo6okя расчитывал что с вас кто-то поможет а они тут утроили дебаты - создате себе тему и го туда
koJIo6ok, в этом тебе никто помогать не будет.Любителей code behind мало. В xaml это делается проще и быстрее.Он для этого и разрабатывался
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36329522
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Очередной слив Севы против Романа Голубина.

Сева, мой совет, закрепите теорию о паттернах, потом можно браться за практику. А то так никуда не годится. Лезете с советами, а дела не знаете. И путаетесь в базовых определениях. Негоже.
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36329538
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SokolNikSeVa,

зачем ты с мусей общаешься
он ж дебил
Что на это скажешь?
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36329606
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А что я еще могу сказать про шизофреника Сахавата, который с головой не дружит.
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36329626
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУОчередной слив Севы против Романа Голубина.

Сева, мой совет, закрепите теорию о паттернах, потом можно браться за практику. А то так никуда не годится. Лезете с советами, а дела не знаете. И путаетесь в базовых определениях. Негоже.

провокация на флейм.

Предупреждение 1 -> Предупреждение 2 -> Бан
...
Рейтинг: 0 / 0
DataGrid + WPF
    #36329635
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SeVaSokolNikSeVa,

зачем ты с мусей общаешься
он ж дебил
Что на это скажешь?

Предупреждение 1 -> Предупреждение 2 -> Бан
...
Рейтинг: 0 / 0
43 сообщений из 43, показаны все 2 страниц
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / DataGrid + WPF
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]