Imposta il valore di default di Telerik: GridDropDownColumn all'interno di Telerik: RadGrid

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

  •  19-09-2019
  •  | 
  •  

Domanda

Ho un Telerik: RadGrid che è destinata a una fonte di dati SQL. Una delle colonne è per "Location", che è in realtà un valore di guardare in alto in un'altra tabella.

<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>

Il mio elenco di posizioni è memorizzato in un ObjectDataSource, che è destinato a un DataTable statica e in ordine alfabetico per me già. Quello che vorrei fare è essere in grado di impostare l'opzione di default per questa discesa.

Per esempio, supponiamo di avere le seguenti posizioni:

1   Home    
2   Work
3   Parents
4   Car

Mi piacerebbe avere i genitori siano il mio valore di default.

Questo esempio su Telerik mostra qualcosa simile a quello che sto cercando di fare. Se si fa clic su "aggiungi record", si noterà la città di default è Kirkland e sto cercando di capire come usare Londra come predefinito quando si aggiunge un nuovo record.

È stato utile?

Soluzione

Non so se è il modo migliore o più semplice o no, ma funziona.

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");
    }
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top