Pregunta

He añadido un RadControl, RadGrid y tengo que añadir un radComboBox en el modo de edición.

Cuando el usuario hace clic en el radComboBox, necesito conseguir tanto "texto" y el "valor" de la radComboBox para salvar a la mesa cuando los valores de actualizaciones de usuario.

<telerik:RadComboBox ID="RadComboBox1" Runat="server" 
             DataSourceID="SqlDataSource1" DataTextField="docCategoryName" 
             DataValueField="docCategoryID" Height="200px" Skin="Vista">

             

Cuando el usuario selecciona desde el radComboBox, que necesito para obtener el valor de DataTextField y DataValueField en un HiddenField.

¿Fue útil?

Solución

El enfoque descrito por Program.X es muy bueno. Esto, por supuesto, funciona si estás usando un RadCombobox en el interior de un GridTemplateColumn en RadGrid.

RadGrid también proporciona un sistema incorporado en GridDropDownColumn, que puede hacer automáticamente una RadCombobox durante las ediciones. Si decide utilizar el tipo de columna incorporado, es necesario configurar los controladores de eventos mediante programación del lado del cliente para el RadGrid prestados, así:

protected void RadGrid1_ItemCreated(object sender, Telerik.Web.UI.GridItemEventArgs e)
{
    //Find GridEditableItems when in Edit mode
    if (e.Item is GridEditableItem && e.Item.IsInEditMode)
    {
        //Get reference to item (i.e. Row)
        var item = e.Item as GridEditableItem;

        //Get reference to auto-generated RadCombobox in
        //specific column (in this case, a column called Title)
        var rcb = item["Title"].Controls[0] as RadComboBox;
        if (rcb == null)
            return;

        //Customize the RadCombobox properities
        rcb.OnClientSelectedIndexChanged = "onselectedindexchanged";
    }
}

Donde "OnSelectedIndexChanged" es el nombre de un lado del cliente de JavaScript en su página diseñada para controlar el evento RadCombobox.

Cualquiera de estos enfoques debe permitirle alcanzar su objetivo.

Otros consejos

Telerik son las mejores personas para ayudarle con esto, pero a partir de su sitio (y de la memoria):

http://www.telerik.com/help/aspnet-ajax /combo_clientsideonclientselectedindexchanged.html

Si usted tiene su radCombo:

<telerik:RadComboBox
 ID="RadComboBox1"
 runat="server"
 OnClientSelectedIndexChanged="OnClientSelectedIndexChanged">
</telerik:RadComboBox> 

Con su evento JS:

<script language="javascript" type="text/javascript">
function OnClientSelectedIndexChanged(sender, eventArgs)
{
 var item = eventArgs.get_item();

// get the text and value elements
var text=item.get_text();
var val=item.get_value();

$('#hiddenField').val(val);
}
</script>

Cuando HiddenField es el ID del campo oculto.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top