Solved

C# Forms

Posted on 2009-04-07
4
200 Views
Last Modified: 2013-12-17
This is probably easy and i am just miss understanding how C# works but here it is anyway.

I have a form. when I leave a combot box I want it to call a child with a drop down options box.
I want to fill the child form with the Data from a query on the first form and this I can do and got to work.  After the item selection is done on the child form I need it to update a differant combo box on the main for and finish wth the original combox_Leave function.  
public void comboBox1_Leave(object sender, EventArgs e)
{
           SqlConnection SpecItem = new SqlConnection(GetItem.MyConn);
            SpecItem.Open();
            DataSet ItemResult = new DataSet();
            SqlCommand Items = new SqlCommand("Select * from Specification where Item_Number ='" + comboBox1.Text + "'", SpecItem);
            Items.CommandType = CommandType.Text;
            SqlDataAdapter ItemAdapter = new SqlDataAdapter(Items);
            ItemAdapter.Fill(ItemResult);
            DataTable Result = ItemResult.Tables[0];
            if (Result.Rows.Count == 1)
            {
                this.comboBox2.Text = Result.Rows[0][4].ToString();
                this.comboBox3.Text = Result.Rows[0][3].ToString();
                this.textBox1.Text = Result.Rows[0][1].ToString();
                this.dateTimePicker1.Value = Convert.ToDateTime(Result.Rows[0][2].ToString());
                this.textBox2.Text = Result.Rows[0][6].ToString();
                this.textBox3.Text = Result.Rows[0][5].ToString();
                this.textBox4.Text = Result.Rows[0][7].ToString();
            }
            else
            {
    //************************************************************************************************************
   // this is where I need the child form to be accessed.  and then allow me toselect the proper 
   //  data from the child form up update comboBox3 on this form
  //***************************************************************************************************************
                for (int i = 0; i < Result.Rows.Count; i++)
                {
                    // Adds the selected items to the combobox
                }
                //updates combobox 3
                comboBox3.Text = Locs.Text;
            }
               DataSet ItemFormula = new DataSet();
               SqlCommand ItemFormulas = new SqlCommand("select Item_Number, Amount from Formulation where Parent_Item='"+comboBox1.Text+"' and Location ='"+comboBox3.Text+"'", SpecItem);
               SqlDataAdapter formulation = new SqlDataAdapter(ItemFormulas);             
               formulation.Fill(ItemFormula);
            bindingSource1.DataSource = ItemFormula;
            bindingSource1.DataMember = ItemFormula.Tables[0].TableName;
            dataGridView1.DataSource = bindingSource1;
            SpecItem.Close();
        }

Open in new window

0
Comment
Question by:Jam9974
  • 2
  • 2
4 Comments
 
LVL 26

Expert Comment

by:Anurag Thakur
ID: 24087719
to be very very frank, i kinda dont like the design of what you are trying to achieve
Leave event - something i dont know will that work
if you have moved the focus on the combobox and then leave do you want to continue with the process or do you want something selected in the combobox before you continue with your process?
0
 

Author Comment

by:Jam9974
ID: 24088091
I want to select an item from the dropdown box before contuning.  Keep in mind I am relatively new to c#
0
 
LVL 26

Expert Comment

by:Anurag Thakur
ID: 24088648
if you want to make the selection in the first combobox mandatory then use the selected index changed of the combobox
create 2 comboboxes on the form - c1, c2
by defaul the c2 combobox is disabled
when the value in the c1 combobox changes - if a non default value is selected then you enable the c2 else keep it as disabled

and when the c2 is enabled and the value is selected you can simply reterieve it on the same page
0
 

Accepted Solution

by:
Jam9974 earned 0 total points
ID: 24106379
I figured it at to work as I intended it to by  useing combobox#.SelectedIndexChange += MycreatedFunction;

and MycreatedFunction does
{
     comboBox3.Text = MySelectedLocation.text;
      DataSet ItemFormula = new DataSet();
               SqlCommand ItemFormulas = new SqlCommand("select Item_Number, Amount from Formulation     where Parent_Item='"+comboBox1.Text+"' and Location ='"+comboBox3.Text+"'", SpecItem);
               SqlDataAdapter formulation = new SqlDataAdapter(ItemFormulas);            
               formulation.Fill(ItemFormula);
            bindingSource1.DataSource = ItemFormula;
            bindingSource1.DataMember = ItemFormula.Tables[0].TableName;
            dataGridView1.DataSource = bindingSource1;
}

0

Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

It was really hard time for me to get the understanding of Delegates in C#. I went through many websites and articles but I found them very clumsy. After going through those sites, I noted down the points in a easy way so here I am sharing that unde…
Real-time is more about the business, not the technology. In day-to-day life, to make real-time decisions like buying or investing, business needs the latest information(e.g. Gold Rate/Stock Rate). Unlike traditional days, you need not wait for a fe…
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa…
I've attached the XLSM Excel spreadsheet I used in the video and also text files containing the macros used below. https://filedb.experts-exchange.com/incoming/2017/03_w12/1151775/Permutations.txt https://filedb.experts-exchange.com/incoming/201…

763 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question