Beispiel #1
0
        private void ExternalChannelsForm_Load(object sender, EventArgs e)
        {
            _externalEntries = new ExternalChannelEntryCollection <ExternalChannelEntry <string, Uri> >();
            XmlReader reader;

            // read in settings
            if (File.Exists(_channelsFileName))
            {
                reader = XmlReader.Create(_channelsFileName);

                _externalEntries.ReadXml(reader);
                ChannelCountLabel.Text = string.Format(P.Resources.ChannelsAvailableNumber,
                                                       _externalEntries.Count.ToString());

                Parallel.ForEach(_externalEntries, entry =>
                                 // foreach (KeyValuePair<string, Uri> entry in _externalEntries)
                {
                    var control = new ExternalChannelPickerControl(entry.Key, entry.Value)
                    {
                        Name = entry.Key
                    };

                    WirePickerEvents(control);

                    ExternalChannelPickerPanel.Controls.Add(control);
                });
            }

            var picker = new ExternalChannelPickerControl();

            WirePickerEvents(picker);

            ExternalChannelPickerPanel.Controls.Add(picker);
        }
Beispiel #2
0
        private void ChannelPicker_ChannelAdded(object sender, EventArgs e)
        {
            // add new instance of the control and assign event handler recursively

            var newPicker = new ExternalChannelPickerControl();

            WirePickerEvents(newPicker);

            ExternalChannelPickerPanel.Controls.Add(newPicker);
        }
Beispiel #3
0
 private void WirePickerEvents(ExternalChannelPickerControl control)
 {
     control.ChannelSaved   += ChannelPicker_ChannelAdded;
     control.ChannelRemoved += ChannelPicker_ChannelRemoved;
 }