public Formatting()
        {
            SfGrid = new SfDataGrid();
            GridImageColumn customerImageColumn = new GridImageColumn();

            customerImageColumn.MappingName = "CustomerImage";
            customerImageColumn.HeaderText  = "Image";

            GridSwitchColumn isOpenColumn = new GridSwitchColumn();

            isOpenColumn.MappingName   = "IsOpen";
            isOpenColumn.HeaderText    = "Is Open";
            isOpenColumn.AllowEditing  = true;
            isOpenColumn.TextAlignment = UITextAlignment.Left;
            isOpenColumn.TextMargin    = new Thickness(30, 16, 5, 6);

            GridTextColumn customerIdColumn = new GridTextColumn();

            customerIdColumn.MappingName   = "CustomerID";
            customerIdColumn.HeaderText    = "Customer ID";
            customerIdColumn.TextAlignment = UITextAlignment.Center;


            GridTextColumn currentColumn = new GridTextColumn();

            currentColumn.MappingName   = "Current";
            currentColumn.Format        = "C";
            currentColumn.CultureInfo   = new CultureInfo("en-US");
            currentColumn.TextAlignment = UITextAlignment.Center;

            GridTextColumn customerNameColumn = new GridTextColumn();

            customerNameColumn.MappingName   = "CustomerName";
            customerNameColumn.HeaderText    = "Customer Name";
            customerNameColumn.TextMargin    = 10;
            customerNameColumn.TextAlignment = UITextAlignment.Left;

            GridTextColumn savingsColumn = new GridTextColumn();

            savingsColumn.MappingName   = "Savings";
            savingsColumn.Format        = "C";
            savingsColumn.CultureInfo   = new CultureInfo("en-US");
            savingsColumn.TextAlignment = UITextAlignment.Center;

            SfGrid.Columns.Add(customerImageColumn);
            SfGrid.Columns.Add(customerIdColumn);
            SfGrid.Columns.Add(currentColumn);
            SfGrid.Columns.Add(customerNameColumn);
            SfGrid.Columns.Add(isOpenColumn);
            SfGrid.Columns.Add(savingsColumn);

            SfGrid.AutoGenerateColumns           = false;
            this.SfGrid.SelectionMode            = SelectionMode.Single;
            SfGrid.ItemsSource                   = new FormattingViewModel().BankInfo;
            SfGrid.GridStyle.AlternatingRowColor = UIColor.FromRGB(219, 219, 219);
            SfGrid.SelectionMode                 = SelectionMode.Single;
            SfGrid.HeaderRowHeight               = 45;
            SfGrid.RowHeight = 65;
            this.AddSubview(SfGrid);
        }
Beispiel #2
0
        /// <summary>
        ///   Formats a Grid Column based on the Settings
        /// </summary>
        /// <param name = "setting"></param>
        public static GridColumn FormatGridColumn(GridViewColumn setting)
        {
            GridColumn column;

            switch (setting.Type.ToLower())
            {
            case "image":
                column = new GridImageColumn();
                //((GridImageColumn)column) = new Bitmap(1, 1);   // Default empty Image
                break;

            case "process":
                column = new GridPercentColumn();
                break;

            case "check":
                column = new GridCheckBoxColumn();
                break;

            case "rating":
                //column = new DataGridViewRatingColumn();
                column = new GridTextColumn();
                break;

            default:
                column = new GridTextColumn();
                break;
            }

            column.HeaderText = setting.Title;
            column.IsReadOnly = setting.Readonly;
            column.IsHidden   = !setting.Display;
            column.Width      = setting.Width;
            //column.IsFrozen = setting.Frozen;
            // For columns bound to a data Source set the property
            //if (setting.Bound)
            //{
            column.MappingName = setting.Name;
            //}

            switch (setting.Type.ToLower())
            {
            case "text":
            case "process":
                //  column.ValueType = typeof(string);
                break;

            case "number":
            case "check":
            case "rating":
                //  column.ValueType = typeof(int);
                break;
            }

            return(column);
        }
Beispiel #3
0
        /// <summary>
        /// Initializes the edit unique identifier element.
        /// </summary>
        /// <param name="uiElement">The unique identifier element.</param>
        /// <param name="gridImageColumn">The grid image column.</param>
        private void InitializeEditUIElement(Image uiElement, GridImageColumn gridImageColumn)
        {
            if (gridImageColumn == null)
            {
                return;
            }
            uiElement.SetBinding(Image.SourceProperty, gridImageColumn.ValueBinding);
            uiElement.SetValue(Image.StretchProperty, gridImageColumn.Stretch);
            if (!double.IsInfinity(gridImageColumn.ImageHeight))
            {
                uiElement.SetValue(FrameworkElement.HeightProperty, gridImageColumn.ImageHeight);
            }
            if (!double.IsInfinity(gridImageColumn.ImageWidth))
            {
                uiElement.SetValue(FrameworkElement.WidthProperty, gridImageColumn.ImageWidth);
            }
#if WPF
            uiElement.SetValue(Image.StretchDirectionProperty, gridImageColumn.StretchDirection);
#endif
        }
Beispiel #4
0
        public override GridColumn CreateColumn()
        {
            GridImageColumn column = new GridImageColumn();

            return(column);
        }
        public override Android.Views.View GetSampleContent(Android.Content.Context context)
        {
            GridImageColumn customerImageColumn = new GridImageColumn();

            customerImageColumn.MappingName = "CustomerImage";
            customerImageColumn.HeaderText  = "Image";

            GridSwitchColumn isOpenColumn = new GridSwitchColumn();

            isOpenColumn.MappingName = "IsOpen";
            isOpenColumn.HeaderText  = "Is Open";

            GridTextColumn customerIdColumn = new GridTextColumn();

            customerIdColumn.MappingName   = "CustomerID";
            customerIdColumn.HeaderText    = "Customer ID";
            customerIdColumn.TextAlignment = GravityFlags.Center;

            GridTextColumn branchNoColumn = new GridTextColumn();

            branchNoColumn.MappingName   = "BranchNo";
            branchNoColumn.HeaderText    = "Branch No";
            branchNoColumn.TextAlignment = GravityFlags.Center;

            GridTextColumn currentColumn = new GridTextColumn();

            currentColumn.MappingName   = "Current";
            currentColumn.Format        = "C";
            currentColumn.CultureInfo   = new CultureInfo("en-US");
            currentColumn.TextAlignment = GravityFlags.Center;

            GridTextColumn customerNameColumn = new GridTextColumn();

            customerNameColumn.MappingName   = "CustomerName";
            customerNameColumn.HeaderText    = "Customer Name";
            customerNameColumn.TextAlignment = GravityFlags.CenterVertical;

            GridTextColumn savingsColumn = new GridTextColumn();

            savingsColumn.MappingName   = "Savings";
            savingsColumn.Format        = "C";
            savingsColumn.CultureInfo   = new CultureInfo("en-US");
            savingsColumn.TextAlignment = GravityFlags.Center;

            sfGrid = new SfDataGrid(context);
            sfGrid.AutoGenerateColumns    = false;
            sfGrid.SelectionMode          = SelectionMode.Single;
            sfGrid.RowHeight              = 70;
            sfGrid.VerticalOverScrollMode = VerticalOverScrollMode.None;
            sfGrid.Columns.Add(customerImageColumn);
            sfGrid.Columns.Add(customerIdColumn);
            sfGrid.Columns.Add(branchNoColumn);
            sfGrid.Columns.Add(currentColumn);
            sfGrid.Columns.Add(customerNameColumn);
            sfGrid.Columns.Add(savingsColumn);
            sfGrid.Columns.Add(isOpenColumn);
            viewmodel          = new FormattingViewModel();
            sfGrid.ItemsSource = viewmodel.BankInfo;

            return(sfGrid);
        }
Beispiel #6
0
        public async void InitStreamGrid()
        {
            var idLogin = await BlobCache.LocalMachine.GetObject <string>("loginCookie");

            string streamGridId = null;
            List <StreamGridItem> streamGrid = null;

            //Set the cookiee manually (propertie 'UseCookies = false')
            //Or use cookieContainer
            using (var client = new HttpClient(new HttpClientHandler {
                UseCookies = false
            }))
            {
                client.DefaultRequestHeaders.Add("Cookie", idLogin);
                var dashboardUrl = new Uri("http://app.casterstats.com/dashboard");
                var resp         = await client.GetAsync(dashboardUrl);

                string content = await resp.Content.ReadAsStringAsync();


                List <Dashboard> dashboards = JsonConvert.DeserializeObject <List <Dashboard> >(content);
                foreach (var dashboard in dashboards)
                {
                    streamGridId = dashboard.DashboardComponents.FirstOrDefault(x => x.Name.Equals("Stream Grid")).Id;
                }

                if (streamGridId != null)
                {
                    dashboardUrl = new Uri("http://app.casterstats.com/dashboard/component/streamgrid/" + streamGridId + "");
                    resp         = await client.GetAsync(dashboardUrl);

                    content = await resp.Content.ReadAsStringAsync();



                    streamGrid = JsonConvert.DeserializeObject <List <StreamGridItem> >(content);
                }
            }
            //Display the content
            Grid innerG = new Grid();

            SfDataGrid dataGrid = new SfDataGrid();

            StreamGridDataRepository streamGridData = new StreamGridDataRepository();

            if (streamGrid != null)
            {
                streamGridData.ListStreamGrid = streamGrid;

                dataGrid.AutoGenerateColumns = false;

                GridTextColumn name = new GridTextColumn();
                name.MappingName = "Name";
                name.HeaderText  = "Name";
                GridTextColumn channel = new GridTextColumn();
                channel.MappingName = "Channel";
                channel.HeaderText  = "Channel";
                GridImageColumn status = new GridImageColumn();
                status.MappingName = "StatusIcon";
                status.HeaderText  = "Status";
                GridTemplateColumn load = new GridTemplateColumn();
                load.MappingName  = "ProgressBarDisplay";
                load.CellTemplate = new DataTemplate(() =>
                {
                    var grid = new Grid();

                    var progressBar = new ProgressBar()
                    {
                        HeightRequest = 100,
                        WidthRequest  = 50
                    };
                    progressBar.SetBinding(ProgressBar.ProgressProperty, "Load");

                    Label label = new Label();

                    label.SetBinding(Label.TextProperty, "PercentProgressBar");
                    grid.Children.Add(progressBar);
                    grid.Children.Add(label);
                    return(new ViewCell()
                    {
                        View = grid
                    });
                });


                load.HeaderText = "Load";
                GridTextColumn count = new GridTextColumn();
                count.MappingName = "Count";
                count.HeaderText  = "Users";
                GridTextColumn max = new GridTextColumn();
                max.MappingName = "Max";
                max.HeaderText  = "Max";
                GridTextColumn bandwidth = new GridTextColumn();
                bandwidth.MappingName = "Bandwid";
                bandwidth.HeaderText  = "Bandwidth";


                dataGrid.Columns.Add(name);
                dataGrid.Columns.Add(channel);
                dataGrid.Columns.Add(status);
                dataGrid.Columns.Add(load);
                dataGrid.Columns.Add(count);
                dataGrid.Columns.Add(max);
                dataGrid.Columns.Add(bandwidth);


                dataGrid.ColumnSizer = ColumnSizer.Auto;

                dataGrid.ItemsSource  = streamGridData.GetStreamGridInfo();
                dataGrid.AllowSorting = true;
            }


            Content = dataGrid;


            //create the columns for the header


            //header.ColumnDefinitions = new ColumnDefinitionCollection
            //{
            //            new ColumnDefinition() { Width = new GridLength(120,GridUnitType.Absolute)},
            //            new ColumnDefinition() { Width = new GridLength(120,GridUnitType.Absolute)},
            //            new ColumnDefinition() { Width = new GridLength(120,GridUnitType.Absolute)},
            //            new ColumnDefinition() { Width = new GridLength(120,GridUnitType.Absolute)},
            //            new ColumnDefinition() { Width = new GridLength(120,GridUnitType.Absolute)},
            //            new ColumnDefinition() { Width = new GridLength(120,GridUnitType.Absolute)},
            //            new ColumnDefinition() { Width = new GridLength(120,GridUnitType.Absolute)}
            //};

            //header.RowDefinitions = new RowDefinitionCollection
            //{
            //            new RowDefinition() {Height = new GridLength(60,GridUnitType.Absolute)}

            //};
            ////Create frame for header
            //var name = new Frame
            //{
            //    OutlineColor = Color.Black,
            //    Content = new Label
            //    {
            //        Text = "Name",
            //        HorizontalOptions = LayoutOptions.Start,
            //        FontAttributes = FontAttributes.Bold,
            //        FontSize = 16
            //    }

            //};

            //var channel = new Frame
            //{
            //    OutlineColor = Color.Black,
            //    Content = new Label
            //    {
            //        Text = "Channel",
            //        HorizontalOptions = LayoutOptions.Start,
            //        FontAttributes = FontAttributes.Bold,
            //        FontSize = 16
            //    }

            //};

            //var status = new Frame
            //{
            //    OutlineColor = Color.Black,
            //    Content = new Label
            //    {
            //        Text = "Status",
            //        HorizontalOptions = LayoutOptions.Start,
            //        FontAttributes = FontAttributes.Bold,
            //        FontSize = 16
            //    }

            //};

            //var load = new Frame
            //{
            //    OutlineColor = Color.Black,
            //    Content = new Label
            //    {
            //        Text = "Load %",
            //        HorizontalOptions = LayoutOptions.Start,
            //        FontAttributes = FontAttributes.Bold,
            //        FontSize = 16
            //    }

            //};

            //var user = new Frame
            //{
            //    OutlineColor = Color.Black,
            //    Content = new Label
            //    {
            //        Text = "Users",
            //        HorizontalOptions = LayoutOptions.Start,
            //        FontAttributes = FontAttributes.Bold,
            //        FontSize = 16
            //    }

            //};

            //var max = new Frame
            //{
            //    OutlineColor = Color.Black,
            //    Content = new Label
            //    {
            //        Text = "Max",
            //        HorizontalOptions = LayoutOptions.Start,
            //        FontAttributes = FontAttributes.Bold,
            //        FontSize = 16
            //    }

            //};

            //var bandwidth = new Frame
            //{
            //    OutlineColor = Color.Black,
            //    Content = new Label
            //    {
            //        Text = "Bandwidth",
            //        HorizontalOptions = LayoutOptions.Start,
            //        FontAttributes = FontAttributes.Bold,
            //        FontSize = 16
            //    }

            //};

            ////add frame to header
            //header.Children.Add(name, 0, 0);
            //header.Children.Add(channel, 1, 0);
            //header.Children.Add(status, 2, 0);
            //header.Children.Add(load, 3, 0);
            //header.Children.Add(user, 4, 0);
            //header.Children.Add(max, 5, 0);
            //header.Children.Add(bandwidth, 6, 0);


            ////create columns for the rows
            //innerG.ColumnDefinitions = new ColumnDefinitionCollection()
            //{
            //            new ColumnDefinition() {  Width = new GridLength(120,GridUnitType.Absolute)},
            //            new ColumnDefinition() {  Width = new GridLength(120,GridUnitType.Absolute)},
            //            new ColumnDefinition() {  Width = new GridLength(120,GridUnitType.Absolute)},
            //            new ColumnDefinition() {  Width = new GridLength(120,GridUnitType.Absolute)},
            //            new ColumnDefinition() {  Width = new GridLength(120,GridUnitType.Absolute)},
            //            new ColumnDefinition() {  Width = new GridLength(120,GridUnitType.Absolute)},
            //            new ColumnDefinition() {  Width = new GridLength(120,GridUnitType.Absolute)}


            //};

            //innerG.RowDefinitions = new RowDefinitionCollection();
            ////create a new row for each object in playerItem
            //if (streamGrid != null)
            //{
            //    for (int i = 0; i < streamGrid.Count; i++)
            //    {
            //        Image icon = new Image();

            //        innerG.RowDefinitions.Add(new RowDefinition() { Height = new GridLength(35, GridUnitType.Absolute) });
            //        innerG.Children.Add(new Label() { Text = streamGrid[i].Name, HorizontalOptions = LayoutOptions.Start }, 0, i);
            //        innerG.Children.Add(new Label() { Text = streamGrid[i].Channel, HorizontalOptions = LayoutOptions.Start }, 1, i);
            //        if (streamGrid[i].Status == 0)
            //        {

            //            icon.Source = ImageSource.FromFile("warningIcon.jpg");
            //            innerG.Children.Add(icon, 2, i);

            //            innerG.Children.Add(new Label()
            //            {
            //                Text = "Unknown",
            //                HorizontalOptions = LayoutOptions.End
            //            }, 2, i);
            //        }
            //        if (streamGrid[i].Status == 3)
            //        {
            //            icon.Source = ImageSource.FromFile("selectIcon.png");
            //            innerG.Children.Add(icon, 2, i);
            //            innerG.Children.Add(new Label()
            //            {
            //                Text = "Up",
            //                HorizontalOptions = LayoutOptions.End
            //            }, 2, i);
            //        }

            //        innerG.Children.Add(new ProgressBar()
            //        {
            //            Progress = streamGrid[i].Load,
            //            WidthRequest = 100,
            //            HeightRequest = 100

            //        }, 3, i);
            //        innerG.Children.Add(new Label() { Text = streamGrid[i].Count.ToString(), HorizontalOptions = LayoutOptions.Start }, 4, i);
            //        innerG.Children.Add(new Label() { Text = streamGrid[i].Max.ToString(), HorizontalOptions = LayoutOptions.Start }, 5, i);
            //        if (streamGrid[i].Bandwidth >= 1000)
            //        {
            //            double mb = streamGrid[i].Bandwidth / 1024f;
            //            innerG.Children.Add(
            //                new Label()
            //                {
            //                    Text = mb + " mbps",
            //                    HorizontalOptions = LayoutOptions.Start
            //                }, 6, i);
            //        }
            //        else
            //        {
            //            innerG.Children.Add(
            //                new Label()
            //                {
            //                    Text = streamGrid[i].Bandwidth + " kbps",
            //                    HorizontalOptions = LayoutOptions.Start
            //                }, 6, i);

            //        }
            //    }
            //}

            //sc.Scrolled += (object sender, ScrolledEventArgs e) =>
            //{
            //    scHeadInner.ScrollToAsync(e.ScrollX, 0, false);
            //};

            //scHeadInner.Content = header;
            //sc.Content = innerG;
            //s.Children.Add(scHeadInner); //header grid view in stackLayout
            //s.Children.Add(sc); // scrollview in stackLayout


            //Content = s; //page content = stacklayout
        }
Beispiel #7
0
        public async void InitCity()
        {
            var idLogin = await BlobCache.LocalMachine.GetObject <string>("loginCookie");

            string     cityId   = null;
            CitiesItem cityList = null;

            //Set the cookiee manually (propertie 'UseCookies = false')
            //Or use cookieContainer
            using (var client = new HttpClient(new HttpClientHandler {
                UseCookies = false
            }))
            {
                client.DefaultRequestHeaders.Add("Cookie", idLogin);
                var dashboardUrl = new Uri("http://app.casterstats.com/dashboard");
                var resp         = await client.GetAsync(dashboardUrl);

                string content = await resp.Content.ReadAsStringAsync();


                List <Dashboard> dashboards = JsonConvert.DeserializeObject <List <Dashboard> >(content);
                foreach (var dashboard in dashboards)
                {
                    cityId = dashboard.DashboardComponents.FirstOrDefault(x => x.Name.Equals("Cities")).Id;
                }

                if (cityId != null)
                {
                    dashboardUrl = new Uri("http://app.casterstats.com/dashboard/component/userscity/" + cityId + "");
                    resp         = await client.GetAsync(dashboardUrl);

                    content = await resp.Content.ReadAsStringAsync();



                    cityList = JsonConvert.DeserializeObject <CitiesItem>(content);
                }
            }
            //Display the content

            SfDataGrid dataGrid = new SfDataGrid();

            CityDataRepository cityData = new CityDataRepository();

            if (cityList != null)
            {
                cityData.ListCity = cityList.CityDatas;

                dataGrid.AutoGenerateColumns = false;

                GridImageColumn countryIcon = new GridImageColumn();
                countryIcon.MappingName = "Flag";
                countryIcon.HeaderText  = "Flag";
                GridTextColumn countryName = new GridTextColumn();
                countryName.MappingName = "Country";
                countryName.HeaderText  = "Country";
                GridTextColumn nbUsers = new GridTextColumn();
                nbUsers.MappingName = "Count";
                nbUsers.HeaderText  = "Users";


                dataGrid.Columns.Add(countryIcon);
                dataGrid.Columns.Add(countryName);
                dataGrid.Columns.Add(nbUsers);

                dataGrid.ColumnSizer = ColumnSizer.Auto;

                dataGrid.ItemsSource  = cityData.GetCityInfo();
                dataGrid.AllowSorting = true;
            }


            Content = dataGrid; //page content = stacklayout
        }