Foros del Web » Programando para Internet » ASPX (.net) »

DataGrid enlazado. Combo de cada fila enlazado. ¿Como marcar cada item de cada combo?

Estas en el tema de DataGrid enlazado. Combo de cada fila enlazado. ¿Como marcar cada item de cada combo? en el foro de ASPX (.net) en Foros del Web. Buenos días desde España !!! Tengo un DataGrid enlazado. Cada Fila del DataGrid, tiene un combo, el cual le he cargado unos valores. Tengo un ...
  #1 (permalink)  
Antiguo 12/01/2010, 04:21
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 20 años, 9 meses
Puntos: 7
DataGrid enlazado. Combo de cada fila enlazado. ¿Como marcar cada item de cada combo?

Buenos días desde España !!!

Tengo un DataGrid enlazado. Cada Fila del DataGrid, tiene un combo, el cual le he cargado unos valores.

Tengo un LIST de la siguiente clase, enlazado al DataGrid:
Código:
    [DataContract()]
    public class Cliente : INotifyPropertyChanged
    {

        #region FIELDS

        private int _codigoCliente = -1;
        private string _nombreCliente;
        private Provincia _provinciaOrigen;
        #endregion


        #region PROPERTIES

        /// <summary>
        /// Devuelve/Establece el Codigo del cliente.
        /// </summary>
        [DataMember()]
        public int CodigoCliente
        {
            get { return this._codigoCliente; }
            set
            {
                this._codigoCliente = value;

                if (PropertyChanged != null)
                    PropertyChanged(this, new PropertyChangedEventArgs("CodigoCliente"));
            }
        }

        /// <summary>
        /// Devuelve/Establece el nombre del cliente.
        /// </summary>
        [DataMember()]
        public string NombreCliente
        {
            get { return this._nombreCliente; }
            set
            {
                this._nombreCliente = value;

                if (PropertyChanged != null)
                    PropertyChanged(this, new PropertyChangedEventArgs("NombreCliente"));
            }
        }

        /// <summary>
        /// Devuelve/Establece la provincia del cliente.
        /// </summary>
        [DataMember()]
        public Provincia ProvinciaOrigen
        {
            get { return this._provinciaOrigen; }
            set
            {
                this._provinciaOrigen = value;

                if(PropertyChanged != null)
                    PropertyChanged(this, new PropertyChangedEventArgs("ProvinciaOrigen"));
            }
        }
        #endregion


        #region INotifyPropertyChanged Members

        public event PropertyChangedEventHandler PropertyChanged;

        #endregion
    }

Al enlazar el DataGrid, voy cargando los valores de un combo por cada fila...
Código:
        private void ctrlGridClientes_LoadingRow(object sender, DataGridRowEventArgs e)
        {
            
            ComboBox cmbProvincias = (ComboBox)ctrlGridClientes.Columns[2].GetCellContent(e.Row).FindName("cmbProvincias");
            cmbProvincias.ItemsSource = this.ListaProvincias;            
        }

Este es el XAML que tengo:
Código:
        <data:DataGrid x:Name="ctrlGridClientes" Margin="27,67,23,55" AutoGenerateColumns="False" LoadingRow="ctrlGridClientes_LoadingRow">
        	<data:DataGrid.Columns>
        		<data:DataGridTextColumn Header="Codigo Cliente" Binding="{Binding CodigoCliente}"/>
                <data:DataGridTextColumn Header="Nombre Cliente" Binding="{Binding NombreCliente}"/>
                <data:DataGridTemplateColumn Header="Provincia">                    
                    <data:DataGridTemplateColumn.CellTemplate>
                        <DataTemplate>
                            <StackPanel>
                                <ComboBox Name="cmbProvincias">
                                    <ComboBox.ItemTemplate>
                                        <DataTemplate>
                                            <StackPanel Orientation="Horizontal">
                                                <TextBlock x:Name="txtProvincia" Text="{Binding NombreProvincia}" />
                                            </StackPanel>
                                        </DataTemplate>
                                    </ComboBox.ItemTemplate>
                                </ComboBox>
                            </StackPanel>
                        </DataTemplate>
                    </data:DataGridTemplateColumn.CellTemplate>
                </data:DataGridTemplateColumn>
        	</data:DataGrid.Columns>
        </data:DataGrid>

¿Habría alguna forma de decir en el ComboBox, que según la propiedad Provincia de la clase Cliente enlazada en el DATAGRID, seleccione el ComboBoxItem correspondiente?
__________________
Charlie.

Etiquetas: combo, datagrid, fila, item
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:14.