Diff bet  poplist & combo box ?

Hello Friends...
now i m learning forms .. can anyone tell me exact diff bet poplist & combo box..where we hv to exact use of poplist & combo box??
from help topics i get this much info only
Description
Specifies the display style for the list item, either poplist, combo box, or Tlist. The poplist and combo box styles take up less space than a Tlist, but end users must open the poplist or combo box to see list elements. A Tlist remains "open," and end users can see more than one value at a time if the list is large enough to display multiple values.

Hi,
when we add dynamically in list item..so we need to ADD_LIST_ELEMENT to add elements in list..There are different ways of populating the list item. Using ADD_LIST_ELEMENT is one of the method. However, the preferred method is to create a record group and populate the list using the record group using populate_group and populate_list (online help would certainly have some examples for this).
which trigger we write this ??Depends on the requirement. If you want the list to be populated when the form is loaded, you would be using when-new-form-instance trigger. However, if you want to filter the list based on some condition, you would write it in the WHEN-VALIDATE-ITEM trigger of the filter field / when-button-pressed trigger of the button which filters.
time how much values we can add ??I don't understand this. Is your question is "at a time how many values can be added"? then, there is no limit as such. Or, if your question is, "how much time it takes to add a value", it all depends on many factors like, network etc.
On the related note, it is not a good idea to use a list if you have many values (say more than 100 or so). In that case, you might want to use List of Values instead of Combobox/PopList.
-Arun

Similar Messages

  • Jump To Record in Combo Box and Poplist

    Hello,
    I have created a demo Form to show how to create a Jump-to feature for Combo Boxes and Poplists. In the combo box the user enters a character and it automatically jumps to the first entry starting with that character. With the poplist, the user enters text in a text box and it jumps to that entry in the poplist. Please add your email if you want me to send you a demo.
    If anyone knows how to clear the text highlighting in a field (the opposite of Select_all) let me know. I can't find a workable solution (aside from using PJCs which we haven't figured out how to do yet).
    ~Rob

    Rob i would like to send me the demo. Thanx in advance. My e-mail is [email protected]
    Regards,
    Bill...

  • Search Within a Poplist or Combo Box

    I am porting an existing application from Microsoft Access (with VB code) to Oracle forms. I need to emulate the VB combo box behaviour whereby if you place the cursor on a combo box field and begin typing it will jump to the first applicable result. Is there anything in Forms to accomplish this?

    That would be usefull if the search is done as the user enters information (rather then when the user hits a search button for instance). Either way, I would love to see your code:
    [email protected]
    Thank You,
    ~Rob

  • Adding an event listener to combo box

    I am working on a mortgage calculator and I cannot figure out how to add an event listener to a combo box.
    I want to get the mortgage term and interest rate to calucate the mortgage using the combo cox. Here is my program.
    Modify the mortgage program to allow the user to input the amount of a mortgage
    and then select from a menu of mortgage loans: 7 year at 5.35%, 15 year at 5.50%, and
    30 year at 5.75%. Use an array for the different loans. Display the mortgage payment
    amount. Then, list the loan balance and interest paid for each payment over the term
    of the loan. Allow the user to loop back and enter a new amount and make a new
    selection, with resulting new values. Allow user to exit if running as an application
    (can't do that for an applet though).
    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.event.*;
    import java.text.NumberFormat;
    import java.util.Locale;
    //creates class MortgageCalculator
    public class MortgageCalculator extends JFrame implements ActionListener {
    //creates title for calculator
         JPanel row = new JPanel();
         JLabel mortgageCalculator = new JLabel("MORTGAGE CALCULATOR", JLabel.CENTER);
    //creates labels and text fields for amount entered          
         JPanel firstRow = new JPanel(new GridLayout(3,1,1,1));
         JLabel mortgageLabel = new JLabel("Mortgage Payment $", JLabel.LEFT);
         JTextField mortgageAmount = new JTextField(10);
         JPanel secondRow = new JPanel();
         JLabel termLabel = new JLabel("Mortgage Term/Interest Rate", JLabel.LEFT);
         String[] term = {"7", "15", "30"};
         JComboBox mortgageTerm = new JComboBox(term);
         JPanel thirdRow = new JPanel();
         JLabel interestLabel = new JLabel("Interest Rate (%)", JLabel.LEFT);
         String[] interest = {"5.35", "5.50", "5.75"};
         JComboBox interestRate = new JComboBox(interest);
         JPanel fourthRow = new JPanel(new GridLayout(3, 2, 10, 10));
         JLabel paymentLabel = new JLabel("Monthly Payment $", JLabel.LEFT);
         JTextField monthlyPayment = new JTextField(10);
    //create buttons to calculate payment and clear fields
         JPanel fifthRow = new JPanel(new GridLayout(3, 2, 1, 1));
         JButton calculateButton = new JButton("CALCULATE PAYMENT");
         JButton clearButton = new JButton("CLEAR");
         JButton exitButton = new JButton("EXIT");
    //Display area
         JPanel sixthRow = new JPanel(new GridLayout(2, 2, 10, 10));
         JLabel displayArea = new JLabel(" ", JLabel.LEFT);
         JTextArea textarea = new JTextArea(" ", 8, 50);
    public MortgageCalculator() {
         super("Mortgage Calculator");                     //title of frame
         setSize(550, 350);                                             //size of frame
         setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
         Container pane = getContentPane();
         GridLayout grid = new GridLayout(7, 3, 10, 10);
         pane.setLayout(grid);
         pane.add(row);
         pane.add(mortgageCalculator);
         pane.add(firstRow);
         pane.add(mortgageLabel);
         pane.add(mortgageAmount);
         pane.add(secondRow);
         pane.add(termLabel);
         pane.add(mortgageTerm);
         pane.add(thirdRow);
         pane.add(interestLabel);
         pane.add(interestRate);
         pane.add(fourthRow);
         pane.add(paymentLabel);
         pane.add(monthlyPayment);
         monthlyPayment.setEnabled(false);
         pane.add(fifthRow);
         pane.add(calculateButton);
         pane.add(clearButton);
         pane.add(exitButton);
         pane.add(sixthRow);
         pane.add(textarea); //adds texaarea to frame
         pane.add(displayArea);
         setContentPane(pane);
         setVisible(true);
         //Adds Listener to buttons
         calculateButton.addActionListener(this);
         clearButton.addActionListener(this);
         exitButton.addActionListener(this);
         mortgageTerm.addActionListener(this);
         interestRate.addActionListener(this);
    public void actionPerformed(ActionEvent event) { 
         Object command = event.getSource();
         JComboBox mortgageTerm = (JComboBox)event.getSource();
         String termYear = (String)mortgageTerm.getSelectedItem();
    if (command == calculateButton) //calculates mortgage payment
         int year = Integer.parseInt(mortgageTerm.getText());
         double rate = new Double(interestRate.getText()).doubleValue();
         double mortgage = new Double(mortgageAmount.getText()).doubleValue();
         double interest = rate /100.0 / 12.0;
         double monthly = mortgage *(interest/(1-Math.pow(interest+1,-12.0 * year)));
                   NumberFormat myCurrencyFormatter;
                   myCurrencyFormatter = NumberFormat.getCurrencyInstance(Locale.US);
                   monthlyPayment.setText(myCurrencyFormatter.format(monthly));
         if(command == clearButton) //clears all text fields
                   mortgageAmount.setText(null);
                   //mortgageTerm.setText(null);
                   //interestRate.setText(null);
                   monthlyPayment.setText(null);
              if(command == exitButton) //sets exit button
                        System.exit(0);
         public static void main(String[] arguments) {
              MortgageCalculator mor = new MortgageCalculator();

    The OP already did this to both JComboBoxes.
    mochatay, here is a new actionPerformed method for you to use.
    I've improved a few things here and there...
    1) You can't just cast the ActionEvent's source into a JComboBox!
    What if it was a JButton that fired the event? Then you would get ClassCastExceptions (I'm sure you did)
    So check for all options, what the source of the ActionEvent actually was...
    2) You can't assume the user will always type in valid data.
    So enclose the Integer and Double parse methods in try-catch brakcets.
    Then you can do something when you know that the user has entered invalid input
    (like tell him/her what a clumsy idiot they are !)
    3) As soon as user presses an item in any JComboBox, just re-calculate.
    I did this here by programmatically clicking the 'Calculate' button.
    Alternatively, you could have a 'calculate' method, which does everything inside the
    if(command==calculateButton) if-block.
    This will be called when:
    a)calculateButton is pressed
    b)when either of the JComboBoxes are pressed.
    public void actionPerformed (ActionEvent event)
            Object command = event.getSource ();
            if (command == calculateButton) //calculates mortgage payment
                int year = 0;
                double rate = 0;
                double mortgage = 0;
                double interest = 0;
                /* If user has input invalid data, tell him so
                and return (Exit from this method back to where we were before */
                try
                    year = Integer.parseInt (mortgageTerm.getSelectedItem ().toString ());
                    rate = new Double (interestRate.getSelectedItem ().toString ()).doubleValue ();
                    mortgage = new Double (mortgageAmount.getText ()).doubleValue ();
                    interest = rate / 100.0 / 12.0;
                catch (NumberFormatException nfe)
                    /* Display a message Dialogue box with a message */
                    JOptionPane.showMessageDialog (this, "Error! Invalid input!");
                    return;
                double monthly = mortgage * (interest / (1 - Math.pow (interest + 1, -12.0 * year)));
                NumberFormat myCurrencyFormatter;
                myCurrencyFormatter = NumberFormat.getCurrencyInstance (Locale.US);
                monthlyPayment.setText (myCurrencyFormatter.format (monthly));
            else if (command == clearButton) //clears all text fields
                /* Better than setting it to null (I think) */
                mortgageAmount.setText ("");
                //mortgageTerm.setText(null);
                //interestRate.setText(null);
                monthlyPayment.setText ("");
            else if (command == exitButton) //sets exit button
                System.exit (0);
            else if (command == mortgageTerm)
                /* Programmatically 'clicks' the button,
                As is user had clicked it */
                calculateButton.doClick ();
            else if (command == interestRate)
                calculateButton.doClick ();
            //JComboBox mortgageTerm = (JComboBox) event.getSource ();
            //String termYear = (String) mortgageTerm.getSelectedItem ();
        }Hope this solves your problems.
    I also hope you'll be able to learn from what I've indicated, so you can use similar things yourself
    in future!
    Regards,
    lutha

  • How to use the Combo Box In MAtrix Colums

    HI Experts,
    Good Mornong.How to use the Combo Box In MAtrix Colums?
    Regards And Thanks,
    M.Thippa Reddy

    hi,
    loading data in to the combobox on form load.but, it should be done when atleast one row is active.
    the values what ever you are inserting in to combo should  be less than or eqhal to 100 or 150.if it exceeds beyond that performance issue arises.it takes more time to load all the data.so, it is better to have 100 or less.
    oMatrix.AddRow()
    RS = Nothing
    RS = ocompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.BoRecordset)
    RS.DoQuery("select ItemCode,ItemName from oitm")
    oCombo = oMatrix.Columns.Item("ColumnUID").Cells.Item(oMatrix.RowCount).Specific
    For i = 1 To RS.RecordCount
          If RS.EoF = False Then
                oCombo.ValidValues.Add(RS.Fields.Item("ItemCode").Value,RS.Fields.Item("ItemName").Value)
                RS.MoveNext()
          End If
    Next
    the above code is inserting data from database to column combobox.
    you can fill combo directly also as shown below.
    oCombo.ValidValues.Add("x","1")
    oCombo.ValidValues.Add("y","2")
    oCombo.ValidValues.Add("z","3")
    oCombo.ValidValues.Add("","")
    and what ever the values you are filling into combo should be unique.other wise it shows valid value exists.
    regards,
    varma

  • How to populate values from database into a Combo Box?

    Hi,
    How to display all the values of a field of a database table in a combo box inside a grid in B1 user defined form?
    Regards,
    Sudeshna.

    Hi,
    If you are trying to do this on a system form (I gues this is your case, reading the other question), for example Sales Orders, and you want to show the values from a User Defined Table (UDT), you just need to add a User Defined Field on Marketing Documents Line level, and say it is linked to the UDT.
    SBO will automatically show the combo with the values on the Code field of the UDT.
    Regards,
    Ibai Peña
    Sorry, I didn´t read the post well.
    What you could do is each time the form is loaded, read the values from the table, and asign them as Valid Values for the combobox column. You can do this programatically, or using XML (which is recommended becouse of better performance).
    Message was edited by: Ibai Peña

  • How to display data in combo box from xml file.

    Hi All,
            I have the data in xml file.
      <jukebox>
        <song>
            <title>When the Levee Breaks</title>
            <artist>Kansas Joe and Memphis Minnie</artist>
            <url>delhi601(www.songs.pk).mp3</url>
        </song>
        <song>
            <title>Better Leave that Stuff Alone</title>
            <artist>Will Shade</artist>
            <url>delhi601(www.songs.pk).mp3</url>
        </song>
        <song>
            <title>Walk Right In</title>
            <artist>Cannon's Jug Stompers</artist>
            <url>delhi601(www.songs.pk).mp3</url>
        </song>
    </jukebox>
    and i want to display the only url in combo box list. for that how can load this xml file and how can i show.
    Can any one help me.
    thanks
    Raghu.

    Raghuvasa,
    Get the XML file data into an XML variable in your code, say var jukebox: xml. Then do
    combo.dataProvider = jukebox.song.url
    or as a shortcut
    combo.dataProvider = jukebox.descendants("url")
    The latter will pull out elements with tag name url at any depth in the xml structure, so sometimes you have to be careful, but in your case there should be no problem.
    Richard

  • Using wildcards in combo box list

    Is it possible to key in the first letter of a member and retrieve all matches? For example, key in the letter A in the combo box and the drop down list is all of the members starting with the letter A. If so, how?This is for a product dimension that is sorted by sku number. Therefore the aliases are not sorted. Just trying to make it easier to scroll and make a choice.Is another way better? I am trying to use the "AddItem" method.Thanks!

    Hi Cletis,You can query the VB API using the EsbOtlQueryMembers function to get member that start with a specified member.. You will do an ESB_WILDSEARCH query type and will specify the string to search for in the pszString1 field of the ESB_PREDICATE_T argument to the function.Alternatively (or additionally), download the free source code for the EssQuery component that we give away on our website (www.appliedolap.com - technology downloads section). You should be able to use this code directly in your Excel code.. Note you may need to change the essbase api declarations to fit your version of Essbase (a pain I know.. This is the reason we created a entire web-service-based API for our ActiveOLAP product and eliminated the need for the Essbase client).Good Luck.. It was good seeing last week at the Nashville User Group meeting.TimTim TowApplied OLAP, Inc

  • Simple combo box question

    I have Flash MX 2004 Pro. I want to create a
    movie/graphic/button ( not sure which one yet) of a county
    (obviously from a state map) and I want to have all of the counties
    (over 40) listed in a Combo Box. I would like the Combo box to
    automatically be updated/populated every time I create a
    movie/graphic/button of a county. I would like to be able to click
    on a county name in the combo box and have the county highlighted.
    While the graphic part is doable, I am asking for help with the
    scripts.
    One more thing: I have a text box that I want to have data
    displayed only for the specific county. So I am thinking of
    creating a text box that is invisible in the State swf but will be
    viewable when the county is selected (mouse over or thru the combo
    box). Do I have to use the scripts to make it viewable when the
    movie is selected?
    Is this even possible with my version of Flash and if so,
    does anyone have some codes I can look at?
    Thanks.

    As far as the text goes, there are several ways to do that.
    Simplest way is to make the text visible when rolled over and
    invisible when rolled out. That way you get the text positioned and
    formated the way you want. It isn't the best method in terms of
    maintenance. A better method is have one text clip that you can
    position in relation to the (x,y) coordinates of the highlighted
    county and pull the text for the county from an array. The latter
    requires more script but is easier to go back and change since all
    you do is update an array.
    I just noticed a line in the onRollOut
    this[this._parent._name + "menu"].selectedIndex = 0;
    that will serve you no purpose whatsoever. I missed deleting
    that from the script I modified to post to you. It doesn't hurt
    anything since it targets nothing you have

  • Combo box is not activating in the detail for second item

    hi
    i have a detail block in which am using listitem with list style poplist. for second item its not getting activated by clicking directly. But if we are navigating through the first item its getting activated. Is there any way to activate it directly.
    thnks in advance

    i have master detail form. In which detail section starts with a listitem with liststyle poplist.
    For first time entry there no pblem at all.
    But when we query the the data and want to add more detail to add in detail block then yle clicking in the first list item in detail block remain inactive.
    we can make it active only yle we press enter key from the previous record. But clicking in the combo box directly is not possible.
    is there any solution to make it active the listitem
    Thnks

  • Displaying text in a combo box.

    Hi, i was wondering if anyone could help me finish an application i am working on. I have two forms, one inputs dat to a text file and another retrieves it. i want to display the text in a combo box and then click an event in the combo box and a description
    of the event will appear in a text  box, also if i select a date on the second form the events in the combo box change for that date if there is events for it. the first form is working fine , i was looking for help with the second one please. my code
    so far is:
    namespace TicketInformation
       public partial class TicketInformationForm : Form
          public TicketInformationForm()
             InitializeComponent();
          //creating the community events list.
          List<Community_Event> CommnunityEvents;
          //create the Create Event list method.
          private void CreateEventList()
             CommnunityEvents = new List<Community_Event>();
             // call the extract Data method.
             ExtractData();
             //Clear any events from the combo box before proceeding.
             eventComboBox.Items.Clear();
             //for each event item in the Commuity event list,add it to the eventComboBox.
             foreach (Community_Event item in CommnunityEvents)
                eventComboBox.Items.Add(item.Description);
             //if the events count is greater then 0, display the following
             if (CommnunityEvents.Count > 0)
                //if there are no events for the date selected display the following
                eventComboBox.Text = " -Events- ";
                descriptionTextBox.Text = "Pick an event";
             }//end if
             else
                //if there are no events for the date selected display the following
                eventComboBox.Text = " No Events ";
                descriptionTextBox.Text = "No events today.";
             }//end else
          //Creating the Method ExtractData
          private void ExtractData()
             CommnunityEvents.Clear();
             // load the data from the file
             List<Community_Event> tempList = new List<Community_Event>();
             //string[] fileLines = File.ReadLines(@"C:\Users\IAN\Documents\calendar.txt");
             foreach(string line in File.ReadLines("calendar.txt"))
                string[] items = line.Split(",".ToCharArray());
                if (items.Length >= 5)
                   Community_Event newEvent = new Community_Event();
                   newEvent.Day = Convert.ToInt32(items[0]);//Converting the Integer to a string.
                   newEvent.Time = items[1];
                   newEvent.Price = Convert.ToDecimal(items[2]);//Converting the decimal to a string.
                   newEvent.Event = items[3];
                   newEvent.Description = items[4];
                   //add the new events to the Comminity Events list.
                   CommnunityEvents.Add(newEvent);
             CommnunityEvents = (from ev in tempList
                                          where ev.Day == 1
                                          select ev).ToList();
          private void dateMonthCalendar_DateChanged(object sender, DateRangeEventArgs e)
             //calling the create event list method to display any events in the eventscombo box.
             CreateEventList();
          private void eventComboBox_SelectedIndexChanged(object sender, EventArgs e)
          private void descriptionTextBox_TextChanged(object sender, EventArgs e)
          private void TicketInformationForm_Load(object sender, EventArgs e)
             //calling the create event list to open the form with today's events displayed if any.
             CreateEventList();
     public class Community_Event
          //Declare a DayValue property of type int
          private int DayValue;//day of the event
          public int Day// Name of the Property
             get
                return DayValue;
             set
                DayValue = value;
          //Declare a TimeValue property of type string
          private string timeValue;//time of the event
          public string Time// Name of the Property
             get
                return timeValue;
             set
                timeValue = value;
          //Declare a priceValue property of type Decimal
          private decimal priceValue;//price of the event
          public decimal Price// Name of the Property
             get
                return priceValue;
             set
                priceValue = value;
          //Declare a eventNameValue property of type string
          private string eventNameValue;//name of the event
          public string Event// Name of the Property
             get
                return eventNameValue;
             set
                eventNameValue = value;
          //Declare a DescriptionValue of type string
          private string DescriptionValue;//description of the event
          public string Description// Name of the Property
             get
                return DescriptionValue;
             set
                DescriptionValue = value;
    Thanks
    D

    Hi Dylan2412,
    According to your description, you'd like to pass the ComboBox.Text to the second form's TextBox.
    In Form1:
    private void button1_Click(object sender, EventArgs e)
    Form2 f2 = new Form2(this.comboBox1.Text); //pass the comboBox1.Text
    f2.Show();
    In Form2:
    public Form2(string s) //get the string;
    InitializeComponent();
    this.textBox1.Text = s;
    You could get the comBoBox refer to this sample above.
    If you have any other concern regarding this issue, please feel free to let me know.
    Best regards,
    Youjun Tang
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • Fill a combo box based on the selection of another combo box

    Hi All,
    I am new to jsp & java script. I have a arraylist of communities and there are 2 combo boxes meant for source community & destination community.
    First user will select Source community , after that I've to remove that community from list and display the option for destination community combo box.
    Here the problem is I am getting the source community value in a java script function - "checkSource() " which I've written at the "onClick" of source community.
    Now java script variable has that community & list of community is a java variable, so I am not able to remove that community from java list.
    Please suggest in the same.
    I've written like this -
    function checkSource()
         var selIndex = document.targetForm.srcgroupname.selectedIndex;
    var srcCommunity = document.targetForm.srcgroupname.options[selIndex].value;
    alert("Selected Src Community-"+srcCommunity);
         <%
         alert("Community length-"+community.size());
         community.remove(community.getIndex( %> srcCommunity <%));
         alert(community.size());
         %>
    But this is not working. community is a java list.
    Please help....
    Thanks in Advance
    Sneha

    Do it with AJAX. Here -> http://www.iem.pw.edu.pl/~opalam/sample/TestAJAX.zip You can download a small, sample project that presents AJAX.
    In the project Servlet, Gson and Jquery is used. When onchange is fired in the first select box a js script method is invoked. This method uses ajax to get the json (gson is used to transfer java objects to json) data from the servlet depending on the value of selected option. When data are obtained the second select box is populated. Of course it might be written better but the general idea is clearly visible which was my goal. Hope this helps.

  • Can two values be passed in the NotInlist combo box?

    I would like to update and addtional field with the NotInList procedure, but I have not see the syntax for updating the additional field.
    My form ask the user for which program they want via combo box. I capture the program box reqested and I would like to add the program name when I update the NotInList field
    IT Specialist

    Hi NeilO,
    As your question is not described clearly enough, please give us some detailed information. If you mean you want to use the NotInList event of the ComboBox to add more than one value to the table's fields, you could need to use VBA. This KB article
    illustrates how to add records into the table by using NotInList event, it should be very helpful to you:
    Use NotInList Event to Add a Record to Combo Box
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • Combo boxes

    hi!
    Is it possible to force a combo box to accept only the values of
    the list? Now I can type whatever I want in the field, nothing
    happens, only when I commit the changes it doesn't work, because
    it is no value from the list; but maybe some user will try to
    type in new values and wonder why it doesnn't work.
    any ideas?
    null

    Michaela (guest) wrote:
    : hi!
    : Is it possible to force a combo box to accept only the values
    of
    : the list? Now I can type whatever I want in the field, nothing
    : happens, only when I commit the changes it doesn't work,
    because
    : it is no value from the list; but maybe some user will try to
    : type in new values and wonder why it doesnn't work.
    : any ideas?
    If you use "Poplist" instead of "Combo Box", the "Listitem"
    will only accept the defined elements. This is a property
    under the "Functional" group of this type of item. The
    "Poplist" will also have the auto-expand feature for the first
    character of each value.
    Gruss.
    null

  • Powershell Unique Selections for Multiple Combo Boxes

    I am currently working on a powershell script that will use 4 combo box controls. I would like for them to all use the same data source whether it be an array or just a .txt file. I would like for each selection to be unique so that no 2 combo boxes can
    have the same item selected. Is there a way to hide the item selected in the data source so the other combo boxes do not even have the option to select it and then when the user changes the item in one of the combo boxes the item is available again? 

    What I am looking do do is have a list of values (T1111,T1112,T1113,T1114) to be selected from by 4 combo boxes. Each value can only be selected once so if one combo box picks T1111 the other 3 do not have that option in its selection. So far I reload the
    combo boxes ever time a selection is made and remove the option from the array, but I was looking to see if there is a better way. As it currently stands, getting distinct values isn't working.
    Code snippet to remove item from array:
    function Get-DataSource
    $array = @("T1111", "T1112", "T1113", "T1114")
    $combo1 = $combobox1.SelectedItem.ToString()
    $combo2 = $combobox2.SelectedItem.ToString()
    $array = $array | Where-Object -FilterScript { $_ -ne $combo1 }
    $array = $array | Where-Object -FilterScript { $_ -ne $combo2 }
    return $array
    I apologize for not uploading my code.
    function OnApplicationLoad {
    #Note: This function is not called in Projects
    #Note: This function runs before the form is created
    #Note: To get the script directory in the Packager use: Split-Path $hostinvocation.MyCommand.path
    #Note: To get the console output in the Packager (Windows Mode) use: $ConsoleOutput (Type: System.Collections.ArrayList)
    #Important: Form controls cannot be accessed in this function
    #TODO: Add modules and custom code to validate the application load
    return $true #return true for success or false for failure
    function OnApplicationExit {
    #Note: This function is not called in Projects
    #Note: This function runs after the form is closed
    #TODO: Add custom code to clean up and unload modules when the application exits
    $script:ExitCode = 0 #Set the exit code for the Packager
    #endregion Application Functions;2
    # Generated Form Function
    function Call-tenet_psf {
    #region Import the Assemblies
    [void][reflection.assembly]::Load('mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089')
    [void][reflection.assembly]::Load('System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089')
    [void][reflection.assembly]::Load('System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089')
    [void][reflection.assembly]::Load('System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089')
    [void][reflection.assembly]::Load('System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a')
    [void][reflection.assembly]::Load('System.Xml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089')
    [void][reflection.assembly]::Load('System.DirectoryServices, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a')
    [void][reflection.assembly]::Load('System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089')
    [void][reflection.assembly]::Load('System.ServiceProcess, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a')
    #endregion Import Assemblies
    #region Generated Form Objects
    [System.Windows.Forms.Application]::EnableVisualStyles()
    $form1 = New-Object 'System.Windows.Forms.Form'
    $combobox2 = New-Object 'System.Windows.Forms.ComboBox'
    $combobox1 = New-Object 'System.Windows.Forms.ComboBox'
    $buttonOK = New-Object 'System.Windows.Forms.Button'
    $InitialFormWindowState = New-Object 'System.Windows.Forms.FormWindowState'
    #endregion Generated Form Objects
    # User Generated Script
    function OnApplicationLoad {
    #Note: This function is not called in Projects
    #Note: This function runs before the form is created
    #Note: To get the script directory in the Packager use: Split-Path $hostinvocation.MyCommand.path
    #Note: To get the console output in the Packager (Windows Mode) use: $ConsoleOutput (Type: System.Collections.ArrayList)
    #Important: Form controls cannot be accessed in this function
    #TODO: Add modules and custom code to validate the application load
    return $true #return true for success or false for failure
    function OnApplicationExit {
    #Note: This function is not called in Projects
    #Note: This function runs after the form is closed
    #TODO: Add custom code to clean up and unload modules when the application exits
    $script:ExitCode = 0 #Set the exit code for the Packager
    $FormEvent_Load={
    #TODO: Initialize Form Controls here
    Load-ComboBox $combobox1 (Get-DataSource)
    Load-ComboBox $combobox2 (Get-DataSource)
    function Get-DataSource
    $array = @("T1111", "T1112", "T1113", "T1114")
    $combo1 = $combobox1.SelectedItem.ToString()
    $combo2 = $combobox2.SelectedItem.ToString()
    $array = $array | Where-Object -FilterScript { $_ -ne $combo1 }
    $array = $array | Where-Object -FilterScript { $_ -ne $combo2 }
    return $array
    #region Control Helper Functions
    function Load-ComboBox
    <#
    .SYNOPSIS
    This functions helps you load items into a ComboBox.
    .DESCRIPTION
    Use this function to dynamically load items into the ComboBox control.
    .PARAMETER  ComboBox
    The ComboBox control you want to add items to.
    .PARAMETER  Items
    The object or objects you wish to load into the ComboBox's Items collection.
    .PARAMETER  DisplayMember
    Indicates the property to display for the items in this control.
    .PARAMETER  Append
    Adds the item(s) to the ComboBox without clearing the Items collection.
    .EXAMPLE
    Load-ComboBox $combobox1 "Red", "White", "Blue"
    .EXAMPLE
    Load-ComboBox $combobox1 "Red" -Append
    Load-ComboBox $combobox1 "White" -Append
    Load-ComboBox $combobox1 "Blue" -Append
    .EXAMPLE
    Load-ComboBox $combobox1 (Get-Process) "ProcessName"
    #>
    Param (
    [ValidateNotNull()]
    [Parameter(Mandatory=$true)]
    [System.Windows.Forms.ComboBox]$ComboBox,
    [ValidateNotNull()]
    [Parameter(Mandatory=$true)]
    $Items,
       [Parameter(Mandatory=$false)]
    [string]$DisplayMember,
    [switch]$Append
    if(-not $Append)
    $ComboBox.Items.Clear()
    if($Items -is [Object[]])
    $ComboBox.Items.AddRange($Items)
    elseif ($Items -is [Array])
    $ComboBox.BeginUpdate()
    foreach($obj in $Items)
    $ComboBox.Items.Add($obj)
    $ComboBox.EndUpdate()
    else
    $ComboBox.Items.Add($Items)
    $ComboBox.DisplayMember = $DisplayMember
    $combobox1_SelectedIndexChanged={
    #TODO: Place custom script here
    Load-ComboBox $combobox2 -Items (Get-DataSource)
    $combobox2_SelectedIndexChanged={
    #TODO: Place custom script here
    Load-ComboBox $combobox1 -Items (Get-DataSource)
    # --End User Generated Script--
    #region Generated Events
    $Form_StateCorrection_Load=
    #Correct the initial state of the form to prevent the .Net maximized form issue
    $form1.WindowState = $InitialFormWindowState
    $Form_Cleanup_FormClosed=
    #Remove all event handlers from the controls
    try
    $combobox2.remove_SelectedIndexChanged($combobox2_SelectedIndexChanged)
    $combobox1.remove_SelectedIndexChanged($combobox1_SelectedIndexChanged)
    $form1.remove_Load($FormEvent_Load)
    $form1.remove_Load($Form_StateCorrection_Load)
    $form1.remove_FormClosed($Form_Cleanup_FormClosed)
    catch [Exception]
    #endregion Generated Events
    #region Generated Form Code
    $form1.SuspendLayout()
    # form1
    $form1.Controls.Add($combobox2)
    $form1.Controls.Add($combobox1)
    $form1.Controls.Add($buttonOK)
    $form1.AcceptButton = $buttonOK
    $form1.ClientSize = '614, 289'
    $form1.FormBorderStyle = 'FixedDialog'
    $form1.MaximizeBox = $False
    $form1.MinimizeBox = $False
    $form1.Name = "form1"
    $form1.StartPosition = 'CenterScreen'
    $form1.Text = "Form"
    $form1.add_Load($FormEvent_Load)
    # combobox2
    $combobox2.FormattingEnabled = $True
    $combobox2.Location = '123, 92'
    $combobox2.Name = "combobox2"
    $combobox2.Size = '121, 21'
    $combobox2.TabIndex = 2
    $combobox2.add_SelectedIndexChanged($combobox2_SelectedIndexChanged)
    # combobox1
    $combobox1.FormattingEnabled = $True
    $combobox1.Location = '123, 64'
    $combobox1.Name = "combobox1"
    $combobox1.Size = '121, 21'
    $combobox1.TabIndex = 1
    $combobox1.add_SelectedIndexChanged($combobox1_SelectedIndexChanged)
    # buttonOK
    $buttonOK.Anchor = 'Bottom, Right'
    $buttonOK.DialogResult = 'OK'
    $buttonOK.Location = '140, 254'
    $buttonOK.Name = "buttonOK"
    $buttonOK.Size = '75, 23'
    $buttonOK.TabIndex = 0
    $buttonOK.Text = "&OK"
    $buttonOK.UseVisualStyleBackColor = $True
    $form1.ResumeLayout()
    #endregion Generated Form Code
    #Save the initial state of the form
    $InitialFormWindowState = $form1.WindowState
    #Init the OnLoad event to correct the initial state of the form
    $form1.add_Load($Form_StateCorrection_Load)
    #Clean up the control events
    $form1.add_FormClosed($Form_Cleanup_FormClosed)
    #Show the Form
    return $form1.ShowDialog()
    } #End Function
    #Call OnApplicationLoad to initialize
    if((OnApplicationLoad) -eq $true)
    #Call the form
    Call-tenet_psf | Out-Null
    #Perform cleanup
    OnApplicationExit

Maybe you are looking for