示例#1
0
        private async Task RefreshChannels(bool force = false)
        {
            if (!force && Channels.Any())
            {
                return;
            }

            if (BusyStart != null)
            {
                BusyStart();
            }

            Channels.Clear();

            var channels = await _slackClient.GetChannels(new ChannelQuery { IncludeArchived = false, MyChannelsOnly = true });

            foreach (var c in channels)
            {
                Channels.Add(
                    new SlackItem(c.id, "#{0}".FormatWith(c.name), c.purpose.value, "#{0}".FormatWith(c.name)));
            }

            if (BusyStop != null)
            {
                BusyStop();
            }
        }