Beispiel #1
0
        public override void Init()
        {
            GameService.DbContext.GameResultValueSet.Where(f => f.GameResult.Game.StageId == Stage.Id).Load();


            Data = new Dictionary <CompetitionReferee, DataTable>();

            var refereeIndex = 1;

            foreach (var referee in GameService.DbContext.CompetitionRefereeSet.Where(f => f.CompetitionId == Stage.CompetitionId))
            {
                var page = new Janus.Windows.UI.Tab.UITabPage(referee.IsMainReferee ? "Гл. судья" : "Судья №" + refereeIndex.ToString())
                {
                    Tag = referee
                };
                if (!referee.IsMainReferee)
                {
                    refereeIndex++;
                }

                refereeTabs.TabPages.Add(page);

                var grid = new GridEX()
                {
                    Dock = DockStyle.Fill, Name = "gridReferee"
                };
                page.Controls.Add(grid);
                var dt = GetTable(Stage, referee);
                grid.DataSource = dt;
                grid.RetrieveStructure();
                grid.RootTable.Columns["Команда"].EditType = EditType.NoEdit;

                if (grid.RootTable.Columns.Contains("Жеребьевка"))
                {
                    grid.RootTable.Columns["Жеребьевка"].EditType = EditType.NoEdit;
                    grid.RootTable.SortKeys.Add(grid.RootTable.Columns["Жеребьевка"], Janus.Windows.GridEX.SortOrder.Ascending);
                }
                else
                {
                    grid.RootTable.SortKeys.Add(grid.RootTable.Columns["Команда"], Janus.Windows.GridEX.SortOrder.Ascending);
                }


                grid.GroupByBoxVisible = false;


                grid.ColumnAutoSizeMode = ColumnAutoSizeMode.ColumnHeader;
                grid.ColumnAutoResize   = true;

                grid.RootTable.Columns.Cast <GridEXColumn>().ToList().ForEach(f =>
                {
                    if (dt.Columns[f.DataMember].DataType == typeof(int))
                    {
                        var condition    = new GridEXFormatCondition();
                        condition.Column = f;

                        condition.ConditionOperator     = ConditionOperator.IsEmpty;
                        condition.FormatStyle.BackColor = Color.LightBlue;



                        condition.TargetColumn = f;

                        grid.RootTable.FormatConditions.Add(condition);
                    }
                });


                Data.Add(referee, dt);

                dt.RowChanged += dt_RowChanged;

                grid.RowHeaderContent = RowHeaderContent.RowPosition;
                grid.RowHeaders       = InheritableBoolean.True;

                grid.EnsureVisible(1);
            }

            /*
             * var analizPage = new Janus.Windows.UI.Tab.UITabPage("Анализ")
             * {
             *
             * };
             *
             * refereeTabs.TabPages.Add(analizPage);
             * var analiz = new StageResultCalculatorView() { Dock = DockStyle.Fill, Stage = Stage };
             * analiz.Init(Stage.Competition);
             * analizPage.Controls.Add(analiz);
             */
        }