تعيين القيمة الافتراضية لل Telerik: GriddropdownColumn داخل Telerik: Radgrid

StackOverflow https://stackoverflow.com/questions/1903924

  •  19-09-2019
  •  | 
  •  

سؤال

لدي telerik: radgrid مرتبط بمصدر بيانات SQL. واحدة من الأعمدة هي "الموقع" والتي هي حقا قيمة البحث في جدول آخر.

<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. يظهر شيئا مشابها لما أحاول القيام به. إذا قمت بالنقر فوق "إضافة سجل جديد"، فستلاحظ أن المدينة الافتراضية هي Kirkland وأحاول معرفة كيفية استخدام London كإعداد افتراضي عند إضافة سجل جديد.

هل كانت مفيدة؟

المحلول

لست متأكدا مما إذا كانت الطريقة الأفضل أو الأكثر وضوحا أم لا، لكنها تعمل.

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");
    }
}
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top