Пример #1
0
        public MainPage(PlatformAdapter platformAdapter)
        {
            InitializeComponent();
            this.platformAdapter = platformAdapter;

            IPv4Address.Items.Add(IPAddress.Loopback.ToString());
            IPv4Address.SelectedIndex = 0;

            IPv6Address.Items.Add(IPAddress.IPv6Loopback.ToString());
            IPv6Address.SelectedIndex = 0;

            ProcessControllerRegistryHost.Text = platformAdapter.processControllerRegistryHost();

            ProcessControllerRegistryHost.TextChanged += ProcessControllerRegistryHost_TextChanged;
            RegisterProcessController.Clicked         += RegisterProcessController_Clicked;

            NetworkInterface[] nics = NetworkInterface.GetAllNetworkInterfaces();
            foreach (NetworkInterface ni in nics)
            {
                IPInterfaceProperties ipProps = ni.GetIPProperties();
                UnicastIPAddressInformationCollection uniColl = ipProps.UnicastAddresses;
                foreach (UnicastIPAddressInformation uni in uniColl)
                {
                    if (uni.Address.AddressFamily == AddressFamily.InterNetwork)
                    {
                        if (!uni.Address.Equals(IPAddress.Loopback))
                        {
                            IPv4Address.Items.Add(uni.Address.ToString());
                        }
                    }
                    else if (uni.Address.AddressFamily == AddressFamily.InterNetworkV6)
                    {
                        if (!uni.Address.Equals(IPAddress.IPv6Loopback))
                        {
                            IPv6Address.Items.Add(uni.Address.ToString());
                        }
                    }
                }
            }
            Output.ItemsSource = _outputSource;
            try
            {
                _controllerI = new ControllerI(this);
            }
            catch (PluginInitializationException ex)
            {
                print(ex.ToString());
                print(ex.reason);
                print(ex.StackTrace);
            }
            catch (System.Exception ex)
            {
                print(ex.ToString());
            }
        }