2008-08-18 58 views
3

我正在使用Infragistics網格,並且遇到困難時使用下拉列表作爲我的其中一列的值選擇器。UltraWebGrid:如何在列中使用下拉列表

我試過閱讀文檔,但Infragistics的文檔不太好。我也看過這個discussion沒有運氣。

我在做什麼至今:

col.Type = ColumnType.DropDownList; 
col.DataType = "System.String"; 

col.ValueList = myValueList; 

其中myValueList是:

ValueList myValueList = new ValueList(); 

myValueList.Prompt = "My text prompt"; 
myValueList.DisplayStyle = ValueListDisplayStyle.DisplayText; 

foreach(MyObjectType item in MyObjectTypeCollection) 
{ 
    myValueList.ValueItems.Add(item.ID, item.Text); // Note that the ID is a string (not my design) 
} 

當我看網頁,我希望看到在細胞中的下拉列表本專欄,但我的專欄是空的。

回答

1

我發現什麼是錯誤的。

該列必須允許更新。

uwgMyGrid.Columns.FromKey("colTest").AllowUpdate = AllowUpdate.Yes; 
2

下面是一個例子,從我的網頁之一:

UltraWebGrid uwgMyGrid = new UltraWebGrid(); 
uwgMyGrid.Columns.Add("colTest", "Test Dropdown"); 
uwgMyGrid.Columns.FromKey("colTest").Type = ColumnType.DropDownList; 
uwgMyGrid.Columns.FromKey("colTest").ValueList.ValueListItems.Insert(0, "ONE", "Choice 1"); 
uwgMyGrid.Columns.FromKey("colTest").ValueList.ValueListItems.Insert(1, "TWO", "Choice 2"); 
0
public void MakeCellValueListDropDownList(UltraWebGrid grid, string columnName, string valueListName, string[] listArray) 
    { 
     //Set the column to be a dropdownlist 
     UltraGridColumn Col = grid.Columns.FromKey(columnName);    
     Col.Type = ColumnType.DropDownList; 
     Col.DataType = "System.String"; 

     try 
     { 
      ValueList ValList = grid.DisplayLayout.Bands[0].Columns.FromKey(columnName).ValueList; 
      ValList.DataSource = listArray; 
      foreach (string item in listArray) 
      { 
       ValList.ValueListItems.Add(item); 
      } 
      ValList.DataBind(); 
     } 
     catch (ArgumentException) 
     { 

     } 
    }