public DirectMessageTimelineViewModel(MainWindowViewModel main, DirectMessageTimeline dtl) { DirectMessages = ViewModelHelper.CreateReadOnlyDispatcherCollection( dtl.DirectMessages, (p) => { if (!IsSelected) UnreadCount++; return new DirectMessageViewModel(p, main); }, DispatcherHelper.UIDispatcher); Party = new UserViewModel(dtl.Party, main); }
public async void AddDirectMessageParty() { try { var fs = await Kbtter.Token.Friendships.ShowAsync(source_screen_name => Kbtter.AuthenticatedUser.ScreenName, target_screen_name => NewDirectMessagePartyScreenName); if (!fs.Target.CanDM ?? false) { View.Notify("そのユーザーにはダイレクトメッセージを送れません。"); return; } var pu = await Kbtter.Token.Users.ShowAsync(screen_name => NewDirectMessagePartyScreenName); var dmtl = new DirectMessageTimeline(Kbtter.Setting, pu); Kbtter.DirectMessageTimelines.Add(dmtl); NewDirectMessagePartyScreenName = ""; View.Notify("ユーザーの追加に成功しました。"); } catch (TwitterException e) { View.Notify("操作中にエラーが発生しました : " + e.Message); } catch { } }