我的目的:动态创建行容器panel,在每行创建Combobox,并依据数据源进行赋值(先给固定值)。
代码如下:
   private void Inform()
        {
            // 
            // panel1
            // 
            System.Windows.Forms.Panel  panel1 = new System.Windows.Forms.Panel();         
            panel1.Location = new System.Drawing.Point(85, 112);
            panel1.Name = "panel11";
            panel1.Size = new System.Drawing.Size(200, 100);
            panel1.TabIndex = 0;
            // 
            // comboBoxBase1
            //
            ComboBox comboBoxBase1 = new  ComboBox();
            comboBoxBase1.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
            comboBoxBase1.FormattingEnabled = true;
            comboBoxBase1.Location = new System.Drawing.Point(15, 14);
            comboBoxBase1.Name = "comboBoxBase11";
            comboBoxBase1.Size = new System.Drawing.Size(121, 20);
            comboBoxBase1.TabIndex = 0;            panel1.Controls.Add(comboBoxBase1);            DataTable dtUnit = new T_Unit(this.mClientApp, 0).GetT_UnitPublicList(false).Copy();
            comboBoxBase1.DataSource = dtUnit;
            comboBoxBase1.DisplayMember = "Unit";
            comboBoxBase1.ValueMember = "UnitID";
            //this.Refresh(); 
            comboBoxBase1.SelectedValue = "1003";//是无效的
 
           
            this.Controls.Add(panel1);            //comboBoxBase1.SelectedValue = 1003;//是有效的
            
        }如果我将SelectedValue放在this.Controls.Add(panel1);之前 赋值是为空的,如果是放在此之后,是有效的。如果我一定要希望放在此之前赋值,有什么办法吗?
纠结一个晚上了