private void OnSelectionChanged(object sender, SelectionChangedEventArgs e) { if (e.AddedItems?.Count > 0) { var container = ScrollingHost.ContainerFromItem(e.AddedItems[0]) as SelectorItem; var content = container?.ContentTemplateRoot as PremiumFeatureCell; if (content != null) { content.PlayAnimation(); } _protoService.Send(new ViewPremiumFeature(e.AddedItems[0] as PremiumFeature)); } if (e.RemovedItems?.Count > 0) { var container = ScrollingHost.ContainerFromItem(e.RemovedItems[0]) as SelectorItem; var content = container?.ContentTemplateRoot as PremiumFeatureCell; if (content != null) { content.StopAnimation(); } } }
public void UpdateFile(Telegram.Td.Api.File file) { foreach (MessageSender sender in ScrollingHost.Items) { if (ViewModel.CacheService.TryGetUser(sender, out User user) && user.UpdateFile(file)) { var container = ScrollingHost.ContainerFromItem(sender) as SelectorItem; if (container == null) { return; } var content = container.ContentTemplateRoot as Grid; var photo = content.Children[0] as ProfilePicture; photo.Source = PlaceholderHelper.GetUser(null, user, 36); } else if (ViewModel.CacheService.TryGetChat(sender, out Chat chat) && chat.UpdateFile(file)) { var container = ScrollingHost.ContainerFromItem(sender) as SelectorItem; if (container == null) { return; } var content = container.ContentTemplateRoot as Grid; var photo = content.Children[0] as ProfilePicture; photo.Source = PlaceholderHelper.GetChat(null, chat, 36); } } }
public void UpdateFile(Telegram.Td.Api.File file) { foreach (User user in ScrollingHost.Items) { if (user.UpdateFile(file)) { var container = ScrollingHost.ContainerFromItem(user) as SelectorItem; if (container == null) { return; } var content = container.ContentTemplateRoot as Grid; var photo = content.Children[0] as ProfilePicture; photo.Source = PlaceholderHelper.GetUser(null, user, 36); } } }