7

我有一个绑定到 SQL 数据源的 telerik:RadGrid。其中一列是“位置”,它实际上是另一个表中的查找值。

<telerik:GridDropDownColumn 
     DataField="d_location_id" 
     DataSourceID="dsLocation" 
     UniqueName="d_location_id" 
     DataType="System.Int32" 
     ListValueField="d_location_id" 
     ListTextField="Abbreviation" 
     HeaderText="Location">
</telerik:GridDropDownColumn>

我的位置列表存储在 ObjectDataSource 中,它绑定到静态 DataTable 并已按字母顺序为我排序。我想做的是能够为此下拉菜单设置默认选项。

例如,假设我有以下位置:

1   Home    
2   Work
3   Parents
4   Car

我想让父母成为我的默认值。

Telerik上的这个示例显示了类似于我正在尝试做的事情。如果您单击“添加新记录”,您会注意到默认城市是柯克兰,我正在尝试弄清楚在添加新记录时如何使用伦敦作为默认城市。

4

1 回答 1

5

不确定这是否是最好或最直接的方法,但它确实有效。

protected void gridMyInfo_ItemDataBound(object sender, Telerik.Web.UI.GridItemEventArgs e)
{
    if (e.Item.IsInEditMode && e.Item.ItemIndex < 0)
    {
        GridEditableItem editedItem = e.Item as GridEditableItem;
        GridEditManager editMan = editedItem.EditManager;

        GridDropDownListColumnEditor editor = editMan.GetColumnEditor("d_location_id") as GridDropDownListColumnEditor;
        editor.ComboBoxControl.SelectedIndex = editor.ComboBoxControl.Items.FindItemIndexByText("Parents");
    }
}
于 2009-12-14T23:54:44.090 回答