在telerik:RadGrid中设置telerik:GridDropDownColumn的默认值

时间:2009-12-14 22:20:42

标签: asp.net telerik radgrid

我有一个telerik:绑定到SQL数据源的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中,该ObjectDataSource绑定到静态DataTable并按字母顺序排序。我想要做的是能够为此下拉列表设置默认选项。

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

1   Home    
2   Work
3   Parents
4   Car

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

Telerik上的此示例显示了与我正在尝试的内容类似的内容。如果单击“添加新记录”,您会注意到默认城市是Kirkland,我正在尝试在添加新记录时弄清楚如何使用伦敦作为默认值。

1 个答案:

答案 0 :(得分: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");
    }
}