Beispiel #1
0
        private void service_GetTableDataByContextIdCompleted(object sender, GetTableDataByContextIdCompletedEventArgs e)
        {
            this.Busy.IsBusy = false;

            if (e.Error != null)
            {
                e.Error.ShowError();
                return;
            }

            if (e.Result != null)
            {
                var tableData = e.Result.Where(t => t.Tables.Count > 0).OrderBy(t => t.Tables.First().DatabaseName).ToList();

                foreach (var table in tableData)
                {
                    var data = table.Tables.First();
                    if (data.Data.Count == 0)
                    {
                        continue;
                    }
                    var enties = (data.Data as IEnumerable <Dictionary <string, string> >).ToDataSource();
                    if (enties != null)
                    {
                        var tab = new TabItem
                        {
                            Header = data.DatabasePrefix,
                            Tag    = data.DatabaseName,
                        };
                        if (data.Data.Count > 0)
                        {
                            var panel = new StackPanel
                            {
                                Orientation = Orientation.Vertical,
                            };

                            var grid = new DataGrid()
                            {
                                AutoGenerateColumns = true,
                                ItemsSource         = enties,
                                SelectionMode       = DataGridSelectionMode.Single,
                                Tag            = table,
                                IsReadOnly     = false,
                                MaxColumnWidth = 600,
                                MaxHeight      = 600,
                            };
                            grid.BeginEdit();
                            panel.Children.Add(grid);
                            tab.Content = panel;
                        }
                        ListGridTab.Items.Add(tab);
                    }
                }
            }
        }
Beispiel #2
0
        private void service_GetTableDataByContextIdCompleted(object sender, GetTableDataByContextIdCompletedEventArgs e)
        {
            this.Busy.IsBusy = false;

            if (e.Error != null)
            {
                e.Error.ShowError();
                return;
            }

            if (e.Result != null)
            {
                var tableData = e.Result.Where(t => t.Tables.Count > 0).OrderBy(t => t.Tables.First().DatabaseName).ToList();

                foreach (var table in tableData)
                {
                    var data = table.Tables.First();
                    if (data.Data.Count == 0) continue;
                    var enties = (data.Data as IEnumerable<Dictionary<string, string>>).ToDataSource();
                    if (enties != null)
                    {
                        var tab = new TabItem
                        {
                            Header = data.DatabasePrefix,
                            Tag = data.DatabaseName,
                        };
                        if (data.Data.Count > 0)
                        {
                            var panel = new StackPanel
                            {
                                Orientation = Orientation.Vertical,
                            };

                            var grid = new DataGrid()
                            {
                                AutoGenerateColumns = true,
                                ItemsSource = enties,
                                SelectionMode = DataGridSelectionMode.Single,
                                Tag = table,
                                IsReadOnly = false,
                                MaxColumnWidth = 600,
                                MaxHeight = 600,
                            };
                            grid.BeginEdit();
                            panel.Children.Add(grid);
                            tab.Content = panel;
                        }
                        ListGridTab.Items.Add(tab);
                    }

                }

            }
        }