EpiCombo set on form load

I have an EpiCombo box , that has an EpiBinding to: CallContextBpmData.Character01

The properties look like this:

I have a form event on Load, that calls a BAQ and loads the data for the BPM fields into a data set. I then go through each row in the dataset and assign it to the Call ContextBpmData view. The ones that are bound to a EpiNumericEditor work just fine. But the ones bound to a EpiCombo do not (ie. cboMEK below). I can put in a message and I know that data is being assigned. The problem is the data value does not display in the combo box as the selected value when the form loads. If I am assigning this data, how can I get the epicombo to display the selected value?

Here is a snippet of the code:

private void RefreshQualityFields()
{
    //get the current labordtl record using the labordtlsearch
    edvBpmData = (EpiDataView)oTrans.EpiDataViews["CallContextBpmData"];         

    
    //execute the baq to get required quality checks at the line
    ds = GetBAQDataSetQualityCheck(laborHedSeq.ToString(), laborDtlSeq.ToString());
    foreach(DataRow dr in ds.Tables[0].Rows)
    {
       switch(dr["UD100A_StepType_c"].ToString())
       {
         case "MIL":
           numMIL01.Visible = true;
           numMIL02.Visible = true;
           numMIL03.Visible = true;
           numMIL04.Visible = true;
           numMIL05.Visible = true;
           //update the CallContextBpmData fields
           edvBpmData.dataView[edvBpmData.Row].BeginEdit();
           edvBpmData.dataView[edvBpmData.Row]["Number10"] = dr["LaborDtl_MIL01_c"];
           edvBpmData.dataView[edvBpmData.Row]["Number11"] = dr["LaborDtl_MIL02_c"];
           edvBpmData.dataView[edvBpmData.Row]["Number12"] = dr["LaborDtl_MIL03_c"];
           edvBpmData.dataView[edvBpmData.Row]["Number13"] = dr["LaborDtl_MIL04_c"];
           edvBpmData.dataView[edvBpmData.Row]["Number14"] = dr["LaborDtl_MIL05_c"];
           edvBpmData.dataView[edvBpmData.Row].EndEdit();               
           break;
         case "MEK":
           cboMEK.Visible = true;
           //update the CallContextBpmData fields
           edvBpmData.dataView[edvBpmData.Row].BeginEdit();
           edvBpmData.dataView[edvBpmData.Row]["Character01"] = dr["LaborDtl_MEK_c"];
           edvBpmData.dataView[edvBpmData.Row].EndEdit();    
           break;

         default:
           break;

       }
    }    

}

We are on 10.2.400.9

oTrans.NotifyAll()?

Do you need to set the combo display manually?
Off the top of my head… went something like this:

cmb01.DataSource = ds1.Tables[“UD100A”];
cmb01.ValueMember = “Character01”;
cmb01.DisplayMember = “Character01”;
cmb01.SetColumnFilter(fields);

If you search for .ValueMember you should find a few, more complete examples.

oTrans.NotifyAll();
doesn’t work

Two other options: ForceRefreshList() and ToggleDropdown() twice.

1 Like

Two other options: ForceRefreshList() and ToggleDropdown() twice.
doesn’t work

@maverick ever find any solution here?

1 Like