private void FillGuestList(Event theEvent) { int currentRow = 1; using (UserContext context = new UserContext()) { foreach (User user in Globals.ListOfApprovedUsers(theEvent)) { var row = new RowDefinition() { Height = GridLength.Auto }; var row1 = new RowDefinition() { Height = GridLength.Auto }; guestListGrid.RowDefinitions.Add(row); guestListGrid.RowDefinitions.Add(row1); System.Windows.Controls.Image image = new System.Windows.Controls.Image { Source = (BitmapSource) new ImageSourceConverter().ConvertFrom(user.Avatar), Height = 40, Width = 40, HorizontalAlignment = HorizontalAlignment.Center, VerticalAlignment = VerticalAlignment.Top, Margin = new Thickness(0, 0, 0, 0) }; Label label = new Label { Content = user.Username, Foreground = Brushes.Black, FontFamily = new FontFamily("Leelawadee"), FontSize = 15, FontWeight = FontWeights.Bold, HorizontalAlignment = HorizontalAlignment.Center, VerticalAlignment = VerticalAlignment.Top, Margin = new Thickness(0, 0, 0, 3), }; label.MouseLeftButtonUp += Globals.Username_MouseLeftButtonUp; Grid rating = new Grid(); rating.VerticalAlignment = VerticalAlignment.Top; Grid.SetRow(rating, currentRow + 1); Grid.SetColumn(rating, 1); guestListGrid.Children.Add(rating); for (int i = 0; i < ((double)user.SumRating / (double)user.AmountOfVoters - user.SumRating / user.AmountOfVoters >= 0.5 ? (user.SumRating / user.AmountOfVoters) + 1 : user.SumRating / user.AmountOfVoters); i++) { rating.ColumnDefinitions.Add(new ColumnDefinition()); Image star = new Image { Source = new BitmapImage(new Uri(@"C:\Users\Max\Documents\CourseWork\CourseWork\Images\coinStar.png")), Width = 12, Height = 12, Margin = new Thickness(3, 3, 3, 3) }; Grid.SetRowSpan(star, 1); Grid.SetColumnSpan(star, 1); Grid.SetRow(star, 0); Grid.SetColumn(star, i); rating.Children.Add(star); } Grid.SetRow(image, currentRow); Grid.SetColumn(image, 0); Grid.SetRowSpan(image, 2); Grid.SetRow(label, currentRow); Grid.SetColumn(label, 1); guestListGrid.Children.Add(image); guestListGrid.Children.Add(label); currentRow += 2; } } }