public SurveillanceCameraSetupWindow()
    {
        RobustXamlLoader.Load(this);

        IoCManager.InjectDependencies(this);

        NetworkConfirm.OnPressed       += _ => OnNetworkConfirm !(NetworkSelector.SelectedId);
        NameConfirm.OnPressed          += _ => OnNameConfirm !(DeviceName.Text);
        NetworkSelector.OnItemSelected += args => NetworkSelector.SelectId(args.Id);
    }
    // Pass in a list of frequency prototype IDs.
    public void LoadAvailableNetworks(uint currentNetwork, List <string> networks)
    {
        NetworkSelector.Clear();

        if (networks.Count == 0)
        {
            NetworkSection.Visible = false;
            return;
        }

        var id     = 0;
        var idList = new List <(int id, string networkName)>();

        foreach (var network in networks)
        {
            idList.Add((id, network));
            id++;
        }

        idList.Sort((a, b) => a.networkName.CompareTo(b.networkName));

        foreach (var(networkId, network) in idList)
        {
            if (!_prototypeManager.TryIndex(network, out DeviceFrequencyPrototype? frequency) ||
                frequency.Name == null)
            {
                continue;
            }

            NetworkSelector.AddItem(Loc.GetString(frequency.Name), networkId);
            if (frequency.Frequency == currentNetwork)
            {
                NetworkSelector.SelectId(networkId);
            }

            id++;
        }
    }