2011-02-12 267 views
1

目標:
自動顯示而不是下拉列表中顯示的「白色空間」從枚舉房屋的第一個值顯示第一個值下拉列表

問題:
不知道如何顯示的第一個值您啓動程序時的枚舉值。

// Fullmetalboy

namespace Assignment1 
{ 
    public partial class MainForm : Form 
    { 
     public MainForm() 
     { 
      InitializeComponent(); 
     } 


     private AnimalManager _myAnimalManager; 



     private void CreateHousingOptions() 
     { 
      string[] housingTypeNames = Enum.GetNames(typeof(Housing)); 
      cmbHousing.Items.Clear(); 

      for (int rbIndex = 0; rbIndex < housingTypeNames.Length; rbIndex++) 
      { 
       cmbHousing.Items.Add(housingTypeNames[rbIndex]); 
      } 

     } 



    } 
} 

namespace Assignment1.HousingType 
{ 

    /// <summary> 
    /// 
    /// </summary> 
    public enum Housing 
    { 
     Stable, 
     Cage, 
     Indoor, 
     Outdoor 
    } 

} 

回答

0

使用此cmbHousing.SelectedItem = housingTypeNames [0];

private void CreateHousingOptions() 
     { 
      string[] housingTypeNames = Enum.GetNames(typeof(Housing)); 
      cmbHousing.Items.Clear(); 
     for (int rbIndex = 0; rbIndex < housingTypeNames.Length; rbIndex++) 
     { 
      cmbHousing.Items.Add(housingTypeNames[rbIndex]); 
     } 

     cmbHousing.SelectedItem = housingTypeNames[0]; 
    } 
1

既然你已經存入您的組合中的所有枚舉名字,你只需要使用它的SelectedIndex屬性,以選擇第一項(如果存在的話):

private void CreateHousingOptions() 
{ 
    cmbHousing.Items.Clear(); 
    foreach (string housingTypeName in Enum.GetNames(typeof(Housing))) { 
     cmbHousing.Items.Add(housingTypeName); 
    } 
    if (cmbHousing.Items.Count > 0) { 
     cmbHousing.SelectedIndex = 0; 
    } 
} 
0
cmbHousing.SelectedIndex = 0; 

cmbHousing.SelectedItem = housingTypeNames[0]; 
相關問題