Sei sulla pagina 1di 46
Mediante el control DataGrid podemos establecer esa asociacion con una ta- bla completa. La conexion con la base de datos y obtencion de un DataSet se efectua si- guiendo exactamente el mismo proceso usado en ejemplos previos. Tras eso bas- ta con asignar a la propiedad DataSource de los controles web una referenci al origen de datos que, por regla general, sera un objeto DataSet o DataView. Puede hacer una simple prueba insertando en un formulario Web un compo- nente DataGrid, estableciendo las propiedades que afectan al aspecto de la tabla, como se ha hecho en la figura 21.6, y, finalmente, escribiendo el codigo si- guiente en el método correspondiente al evento Load: Dim Conexion As SqlConnection = New SqlConnection( "server=INSPIRON; uid=sa;pwd=;database=pubs") Dim Comando As SqlDataAdapter - New _ SqlDateAdapter ("SELECT * FROM authors", Conexion) Dim MiDataSet As DataSet = New DataSet() Comando.Fill(MiDataset, “Autores") DataGrid1.DataSource = MiDataSet.Tables|"Autores") DataGrid1.DataBind() ‘rete icin Ver Eroyecte Ganerar Qepurar Eormeto Tabla Jnertar BU COE ARB O- + - LB 5 corns + cetoves +207 a\ane sje ek 4% te hi T Waban | Webern ton. [ostacrth syzen | niles |i ei tenon | sscunageon fovtecior feriostye forsee cote W foe |p romcoo: | Staines i coset ons Fob Aucarentécotines, Tae Datasoure gen de da es Un pr evar ‘Sementsede bles. Figura 21.6. Disefio del formulario Web con el componente DataGrid Observe como creamos un DataSet recuperando la tabla de autores. BI ul- timo paso es llamar al método DataBind( ) para activar el enlace entre el ori- gen de datos y el control. En la figura 21.7 puede ver el resultado que obtenemos al ejecutar el programa. Si quisiéramos habilitar la edicion de datos en la propia rejilla deberiamos disponer los elementos adecuados, por ejemplo botones, y responder a los even- tos generados por la rejilla a medida que se manipula la informacion Archve én Yer Emvrtor Heramentar Aye Os DB GD) Pewqete fc roortos @Pmvmess @ Cl | T+ 110 | np NocaosvebE sr ctraa00 Enlace neta. spe 32-32-1176 Whave Johnsen 408 496-7223 10922 Bigze td. Menlo Park CA 84025 True 232-959-7765 carson cherya $15 s48-7723.Se9 Darvas Lt Berkeley Ch 34705 True ‘5 $34-2038 5420 Colage Av Seklanal 4499-56-7008 Benser “1s ¢58-9532 4223 Batenan St. $4708 True ya-27-2349 cringlesby 707 93-6448 FO Ban 732 ch 95422 True 529-78-3248 Greene Morningrtar 615 297-2729 22 Greybar Revse RS. Wasbvitie 37235 Falew 12-71-3249 Yokomata Brixo 41s 935-4226 9 silver Cr Walat Creek Ch 94595 True nazesi-s45$ DeFrance Machel 218 47-9992 § Baléiag FL. TH 46403 True 724-60-9391 Macreatner Stearna ALE 324-7128 $4 Upland Hea. Sexiasc cA 94682 Troe S07-s1-6654 Panceley Sylvia 391 946-8853 1956 Arlington Pl. Rockville MD 20453 Troe 295-72-1158 MeBagaen Heather 797 448-4982 301 Purnan avilie CR 5688 False n igura 21.7. Tabla generada por el componente DataGrid Enlace en aplicaciones Windows Para construir una aplicacién Windows con componentes de interfaz enla- zados a datos se utiliza un mecanismo practicamente idéntico al que acaba de describirse en el punto anterior. Para conseguir una aplicacién similar a la pa- gina ASP.NET anterior, con una rejilla mostrando el contenido de la tabla de autores, podriamos insertar un componente DataGrid en un formulario Win- dows e introducir el codigo que puede ver a continuacién en el método corres- pondiente al evento Load del formulario. Dim Conexion As Sq1Connection * server= INSPIRON; uid=sa; pwd: New SqlConnection( jdatabase=pubs") Dim Comando As SqlDataAdapter = New SqlDataAdapter("SELECT * FROM authors", Conexion) Dim Mipataset As DataSet = New DataSet() Comando.Pill(MiDataSet, “Autores") DataGridl.DataSource = Mipataset DataGridl.DataMember = “Autores” Observe que, nuevamente, todo el proceso de conexidn y seleccién de datos es idéntico al que ya conocemos. Lo tinico adicional es la asignacién a las pro- piedades DataSource y DataMenber, la primera de ellas tomando una referen- cia al DataSet y lasegunda tomando el nombre de la tabla que quiere mostrarse. El resultado seria como el de la figura 21.8. Como se puede ver en la mencionada figura, el aspecto de esta rejilla es, en principio, bastante més atractivo que el de la rejilla HTML. Ademas, no tene- mos que hacer nada especial para, por ejemplo, seleccionar una columna y mo- dificar su contenido, aunque la actualizacion real en la base de datos no se efecttia automaticamente. Tendriamos que afadir al menos un boton que se en- cargase de efectuar la actualizacién tal y como se indicé en un punto previo. ‘ie [12345679 Chane Fnceco 99922230 igvo 54 andl fe 72321776 White ——hrwoe ADE ES67223 1OHI2Bgge NerlbPak CA w 1212468015 Gem Magom «IS SEG7IN0 TOSGReISE Card CL iv |zse357786 Ganon Chent_——«415 5487723 58Darrnk Bethy CA i 25741294 Cleny Mehul “408 Z962N2E TZ Ceveland Sandove CA S74e03091 Singh Dear «LIS EMA2SIS SACDCoMage Catan CA iv : 5138430862 1OMesiagp Lawence 1S ro AYSE589082 6223 Gaterm Leteey CA ew i LME7RE W0Ande Fab Ato Ch wi 707 9086445 POBoL'82 Gove CA es i {155054620 18 Bendwey San Fence CA w Memoir 6152972722 22GaybarH ashe TH i Regma 5037856402 $EHibdteB Corate CF g [Sa7iaHs Yokoreto Abo SISSDSADE Isher. Vanek A v [72451067 decane Irene «GS SBEQZ7E 2285 CrmPl onder MI wv © |rasveet Dererce Mechel 2195479982 3 Baling Gay " B "4089831 Seger Dik S1585239) SUDTebga Galine — . i [24809091 MecFester Shear 152547128 LA Uled Mt Calard 1 36207991 Karen Une «MIS SD4OZI0 S720 Mohd Satins a I7ST6SSt Penley §— Ska YOLSBBEDI SRB ego. Rocke ia Jese.s2-719¢ Hunter Shon 4150967128 410 Blende Palo Ako wv Jeno721138 Mebodien Heohe, 707484902 201 trem Vaca roi fees deat Sh eMart beccil aalliiirelinamtafetonsteeerh ee) 6 Figura 21.8. El formulario Windows mostrando la tabla de autores La coleccién DataBindings Ademas de las propiedades DataSource y DataMember, de la que dispo- nen algunos componentes que estan disefiados especificamente para usarlos

Potrebbero piacerti anche