public async void OnNavigatedTo(NavigationParameters parameters)
        {
            _table = parameters["table"] as ITable;

            try
            {
                var list = await _table.GetResult <dynamic>();

                Debug.WriteLine("List.Count: " + list.Count);

                #region Set DataGrid Collection
                var collection = new ObservableCollection <dynamic>();
                foreach (var element in list)
                {
                    collection.Add(element);
                }
                DataGridCollection = collection;

                ButtonWidthDataGrid.Value = new GridLength(1, GridUnitType.Star);
                #endregion

                if (list.GetType() == typeof(List <Status>))
                {
                    #region Set ListView ItemSource
                    ListSource            = list;
                    ButtonWidthList.Value = new GridLength(1, GridUnitType.Star);
                    #endregion
                }

                BindDataset?.Invoke(this, EventArgs.Empty);
            }
            catch (Exception e)
            {
                await _pageDialogService.DisplayAlertAsync(e.GetType().Name, e.Message, "OK");

                await _navigationService.GoBackAsync();
            }
        }
Exemplo n.º 2
0
        public async void OnNavigatedTo(NavigationParameters parameters)
        {
            _table = parameters["table"] as ITable;

            try
            {
                var list = await _table.GetResult <dynamic>();

                Debug.WriteLine("List.Count: " + list.Count);

                #region Set DataGrid Collection
                var collection = new ObservableCollection <dynamic>();
                foreach (var element in list)
                {
                    collection.Add(element);
                }
                DataGridCollection = collection;

                ButtonWidthDataGrid.Value = new GridLength(1, GridUnitType.Star);
                #endregion

                if (list.GetType() == typeof(List <CoreTweet.User>))
                {
                    #region Set ListView ItemSource
                    ListSource            = list;
                    ButtonWidthList.Value = new GridLength(1, GridUnitType.Star);
                    #endregion

                    #region Set TreeMap Data source

                    if (!string.IsNullOrEmpty(_table.OrderByPhrase) &&
                        (typeof(User).GetProperty(_table.OrderByPhrase?.Split(' ')[0].Trim()).PropertyType == typeof(int) ||
                         typeof(User).GetProperty(_table.OrderByPhrase?.Split(' ')[0].Trim()).PropertyType == typeof(int?) ||
                         typeof(User).GetProperty(_table.OrderByPhrase?.Split(' ')[0].Trim()).PropertyType == typeof(float) ||
                         typeof(User).GetProperty(_table.OrderByPhrase?.Split(' ')[0].Trim()).PropertyType == typeof(float?) ||
                         typeof(User).GetProperty(_table.OrderByPhrase?.Split(' ')[0].Trim()).PropertyType == typeof(double) ||
                         typeof(User).GetProperty(_table.OrderByPhrase?.Split(' ')[0].Trim()).PropertyType == typeof(double?)))
                    {
                        var treeMapList = new List <CustomTreeMapItem>();
                        int index       = 0;

                        foreach (User user in list)
                        {
                            treeMapList.Add(new CustomTreeMapItem
                            {
                                WeightValue = (int)user.GetType().GetProperty(_table.OrderByPhrase.Split(' ')[0].Trim()).GetValue(user, null),
                                ImageSource = user.ProfileImageUrl,
                                Text        = user.Name
                            });

                            if (++index >= 10)
                            {
                                break;
                            }
                        }

                        TreeMapList = treeMapList;
                        ButtonWidthTreeMap.Value = new GridLength(1, GridUnitType.Star);
                    }
                    #endregion
                }

                BindDataset?.Invoke(this, EventArgs.Empty);
            }
            catch (Exception e)
            {
                await _pageDialogService.DisplayAlertAsync(e.GetType().Name, e.Message, "OK");

                await _navigationService.GoBackAsync();
            }
        }