示例#1
0
        private async void NotifyIcon_MouseClick(object sender, MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Left)
            {
                try
                {
                    var message = CreateNotificationMessage();

                    var availableIps = await networkService.GetAvailableNetworkPcsAsync();

                    var addressList = availableIps.Select(ip => $"{ip}{Routes.NotifyRoute}").ToList();

                    await senderService.SendBatchAsync(message, addressList, NetworkConsts.TCP_PORT);
                }
                catch (Exception ex)
                {
                    DisplayError();
                }
            }
            else if (e.Button == MouseButtons.Middle)
            {
                try
                {
                    var message = CreatePingRequest();

                    var availableIps = await networkService.GetAvailableNetworkPcsAsync();

                    var addressList = availableIps.Select(ip => $"{ip}{Routes.PingRoute}").ToList();

                    await senderService.SendBatchAsync(message, addressList, NetworkConsts.TCP_PORT);
                }
                catch (Exception ex)
                {
                    DisplayError();
                }
            }
        }