Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.
Mensajes - mar_ccv
Páginas: [1]
1
« en: Viernes 18 de Febrero de 2011, 19:18 »
Hola a todos , tengo el siguiente caso que estoy trabajando en C# Winforms.
1. He creado un UserControl que tiene un combobox donde se almacena el maestro de familias de productos :
public partial class Familias : UserControl { private OracleConnection conexionOracle; private SujifosBasesdeDatos sufijo;
public Familias() { InitializeComponent(); }
public void PoblarFamilia(OracleConnection conexionOracle, SujifosBasesdeDatos sufijo) { this.conexionOracle = conexionOracle; this.sufijo = sufijo; cbFamilias.DataSource = new SicolafNG(conexionOracle).obtenerFamilias(new FamiliasTR(), sufijo); cbFamilias.DisplayMember = "Descripcion"; cbFamilias.ValueMember = "Codigo"; cbFamilias.Text = ""; cbFamilias.SelectedText = ""; cbFamilias.DropDownStyle = ComboBoxStyle.DropDownList; } } 2. En la forma donde utilizo el usercontrol necesito cambiar el SelectedIndex que tiene el combobox que esta en el usercontrol pero no he podido y tengo el siguiente código
#region poblar la familia ; Dejar seleccionada la familia que ha especificado el usuario en el Bono
indice = 0; encontrado = false;
foreach (Control obj in familias1.Controls) { if (obj is ComboBox) { foreach(object objeto in ((ComboBox)obj).Items) { FamiliasTR prueba = (FamiliasTR)objeto; if ( prueba.Codigo == bonoConsulta.Codfamilia) { encontrado = true; break; } indice++; }
if (encontrado) { //Aquí necesito adicionar la línea de código para cambiar el SelectedIndex // pero solo tengo el siguiente dato
this.familias1.Controls. ......... = indice ;
} } }
#endregion
Gracias a los que me puedan ayudar
2
« en: Viernes 18 de Febrero de 2011, 19:03 »
Hola, a todos , ya resovi mi problema. Aquí les copio el codigo que realice.
#region poblar el cargo : Dejar seleccionada el cargo que ha especificado el usuario en el Bono
indice = 0; encontrado = false;
foreach (object objeto in this.cbCargo.Items) // iteramos por cada uno de los items del ComboBox { if (objeto is CargoTR) { CargoTR obj = (CargoTR )objeto; if (obj.CodigoCargo == bonoConsulta.CodCargo) { encontrado = true; break; } indice++; } }
if (encontrado) this.cbCargo.SelectedIndex = indice; // else this.cbCargo.SelectedIndex = -1; // quitamos la seleccion
#endregion
Saludos.
3
« en: Jueves 17 de Febrero de 2011, 17:08 »
Hola a todos, estoy trabajando en Winforms de Visual Estudio framework 3.5. Tengo el siguiente caso: 1. En el Load de la forma lleno un combo box con una lista de cargos (que se toma de la base de datos) de la siguiente forma: cbCargo .DataSource = new BonosVentasNG (conexionOracle ).obtenerCargos(cargo ); cbCargo.DisplayMember = "Nombrecargo"; cbCargo.ValueMember = "Codigocargo"; cbCargo.Text = null; 2. El usuario selecciona un cargo, graba (ó salva) el registro en la base de datos y luego limpia la forma. 3. En el método de limpiar la forma, se llena nuevamente el combo con la lista de cargos como el punto 1. La consulta es la siguiente : Al querer desplegar el registro grabado (Ej: codigo =1 Gerente General) en el combo, puedo hacerlo con los datos que tengo en el datasource? cbCargo.DisplayMember = "Nombrecargo"; cbCargo.ValueMember = "Codigocargo"; ó toca ir a la base de datos con el codigo del cargo , para llenar nuevamente el datasource ? Les agradezco la colaboración que me puedan brindar. Saludos.
4
« en: Lunes 31 de Enero de 2011, 21:01 »
En Winform se tiene el botón limpiar para limpiar los objetos de la forma. Cuando se recorre la forma y se encuentra un DatagridView el código para limpiarla es el siguiente: if ( ( (DataGridView)obj).DataSource != null ) { DataTable dt; dt = (DataTable)(((DataGridView)obj).DataSource); dt.Rows.Clear(); } Este código funciona bien si el datasource es poblado con un datatable. Pero si el datasource se llena con un lista genera el siguiente error : "No se puede convertir un objeto de tipo 'System.Collections.Generic.List`1 al tipo 'System.Data.DataTable'. "
Si alguien me puede ayudar diciendome como hago para validar con que tipo de fuente se lleno el DataSource para realizar la limpieza del mismo.
Gracias.
5
« en: Martes 21 de Diciembre de 2010, 15:19 »
Hola, estoy trabajando en c# y necesito borrar en una datagrigview, filas seleccionadas por el usuario y estas filas eliminarlas en la base de datos.
Gracias de antemano por la colaboración que me puedan brindar
6
« en: Viernes 17 de Diciembre de 2010, 21:34 »
Hola, gracias por tu ayuda me sirvio mucho porque pude solucionar mi problema.
7
« en: Viernes 17 de Diciembre de 2010, 13:42 »
Hola, con C# en winforms estoy poblando datos una datagridview por medio de un datatable desde la base de datos. Después de poblarla la datagridview adiciono líneas para registrar nuevos datos para luego almacenarlos en la base de datos. Pero cuando hago el foreach a la datagridview para almacenar los datos, no se como identificar las nuevas líneas y solo esas almacenarlas. Gracias por la ayuda que me puedan brindar
8
« en: Viernes 9 de Julio de 2010, 16:28 »
Los datos que voy a sumar se toman de un datatable y no he utilizado ciclos porque solo necesito sumar el valor del campo colocarlo en un texbox con la función SUM y que este texbox vaya en el page footer. Por eso cree un texbox en el page footer y utilice la funcion SUM(Fields!nvalor_acreditar.Value ) pero en lo que he consultado dice que no se puede hacer referencia a los campos directamente en el page footer que tengo que hacer referencia es al nombre del elemento del informe y coloque la siguiente expresión :
=Sum(ReportItems! TotalCliente.Value)
Donde el TotalCliente.Value es un texbox del reporte que tiene SUM(Fields!nvalor_acreditar.Value ). Pero me genera error.
Carlos gracias por la colaboración que me puedas brindar.
9
« en: Viernes 9 de Julio de 2010, 15:46 »
hola, necesito colocar un total que sume el campo Fields!nvalor_acreditar.Value en el page footer en el ReportViewer. Gracias por la ayuda que me puedan brindar
10
« en: Jueves 1 de Julio de 2010, 16:38 »
Carlos disculpame , no habia entendido tu sugerencia. Hice el paso a paso que me sugieres pero cuando le doy click derecho al campo donde va el dato fecha no me aparece la opción que tu me das, solo a parecen las opciones que muestro en el archivo adjunto. Creo que no lo hace porque los datos los tomo de un datatable y el campo en el reporte queda tipo texto, como quien dice primero tengo que pasar el dato a fecha y luego darle el formato que necesito 'dd/MM/yyyy'.
Gracias a cualquiere idea que me puedan dar.
11
« en: Jueves 1 de Julio de 2010, 16:20 »
Hola Carlos gracias por tu sugerencia la cual ya hice, tiene el inconveniente que despliega la fecha mes/dia/año y necesito es dia/mes/año. He utilizado el comando
=Format(Fields!dtfecha_recibo.Value,"dd/MM/yyyy"), pero no me cambia el formato, si tienes alguna otra idea te lo agradecería mucho.
12
« en: Jueves 1 de Julio de 2010, 15:37 »
Hola, Como hago para cambiar el formato de fecha 'dd/MM/YYYY' en el ReportViewer, teniendo en cuenta que los datos se toman de un datatable. He utilizado la siguiente instrucción : =Format(Fields!dtfecha_recibo.Value,"dd/MM/yyyy") pero al desplegar la información no toma el cambio. Gracias.
Páginas: [1]
|