CLR: .Net / Mono / Boo / Otros CLR > VB .NET

 Datagrid Para Vb .net 2003

(1/1)

Sagma:
Hola a todos:
soy nuevo en este foro, ya que estoy buscando ayuda por todos lados.
Tambien soy nuevo en la programacion Visual, yo desarrollo con Informix, ahora estoy pasando todos mis codigo a visual, algo tedioso pero me ayuda a comprender los demas.

Mi problema esta con el datagrid, al llenar los datos, este muestra las columnas que uno le pide, pero, aqui esta mi pregunta, como hago para que las columnas sean de diferentes tamaños??

Ya busque en las propiedades y no me resulta nada, esta pero no se aplica  :unsure: .

Por eso pido ayuda a este foro, es algo sencillo, pero yo no lo se

Gracias

Sagma

CyberGatito:
:comp:  hola amigo te contesto porque me imagino lo que estas pasando con ese tema .
private ntabla as datatable
sub configurarGrilla
dim stylostabla as datagridtablesstyles = new datagridteablesstyles
with stylostabla
   .mappingname=ntabla.tablename
end with
dim EstColCodigo as datagridtexboxcolumn= new datagridtexboxcolumn
dim EstcolNombre as datagridtexboxcolumn= new datagridtexboxcolumn
with EstColCodigo
.mappingname=ntabla.columns(0).columnname
.headtext="Codigo"
.wicyh=50  ''''aqui ve que como es ancho en ingles te sale automaticamente
.readonly=true
end with

with EstcolNombre
.mappingname=ntabla.columns(0).columnname
.headtext="Codigo"
.wicyh=100  ''''aqui ve que como es ancho en ingles te sale automaticamente
.readonly=true
end with

stylostabla.gridcolumname.add(EstColCodigo)
stylostabla.gridcolumname.add(EstcolNombre)
me.datagrid1.tablesstyles.add(stylostabla)
end sub

ahora has lo sgte antes que enlace el datagrid a los resultados:
ntabla = new datatable
ntabla=aqui pon el enlace de datos que sea el resultado datatable
ntabla.tablename="" un nombre cualquiera
me.datagrid1.tablesstyles.clear
call configurargrilla
me.datagrid1.datasource=ntabla
ntabla=nothing

y solucionado tu problema si te queda duda escribeme inggchrpd@hotmail.com
nos vemos espero haberte ayudado.
atte
 :ph34r: un gatito

sergiotarrillo:
Aqui yo tambien hice mi codigo:

En el Windows.Form, solo hay tres objetos, CmdCn(boton para conectarse a la base de datos), CmdChange(boton para cambiar el tamño de la grilla), y la grilla por supiesto todo es codigo:

En el boton conexion, no queria poner todo pero por siaca, uso SQL, Pubs:
creo mi conexion, lleno mi adapter, lleno mi data set, y lleno mi grilla:

--- Código: Text ---          Try            'inicializando los datos            myCn = New SqlConnection("Data Source=(local); database=Pubs; User Id=sa; password=sa")             dSetPubs = New DataSet()             'aca en esta se esta abriendo la conezion y cerrandola, no hay porque abrirla            dAdpPubs = New SqlDataAdapter("SELECT * FROM Authors", myCn)             'llenando el dataSet            dAdpPubs.Fill(dSetPubs, "Authors")         Catch err As SqlException            MsgBox(err.Message.ToString())        Finally            myCn.Close()        End Try           'llenando por defecto un ancho de 150        dgPubs.PreferredColumnWidth = 150         'ahora si llenando el datagris        dgPubs.SetDataBinding(dSetPubs, "Authors") 
"ahora en el boton Change llamo a una funcion hace todo el cambio


--- Código: Text ---  Private Sub CmdChangeGrid_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CmdChangeGrid.Click        'dgPubs.CaptionText = "Tabla de Autores de la Base de Datos"        'llamando a la funcion efectos de la Grilla        ChangeGrid()        CmdChangeGrid.Enabled = False    End Sub  

--- Código: Text ---  Private Sub ChangeGrid()        dgPubs.CaptionText = "Tabla de Autores de la Base de Datos"        dgPubs.CaptionForeColor = Color.Aquamarine         'crenado un estilo personalizado y una columna personlizada        Dim myEstiloGrid As DataGridTableStyle = New DataGridTableStyle()                 'aginando la tabla al que asocia el estilo        myEstiloGrid.MappingName = "Authors"         'agregando caracteristica a una columna        Dim myEstiloCol As New DataGridTextBoxColumn()        myEstiloCol.MappingName = "au_fname"        myEstiloCol.HeaderText = "Nombre"        myEstiloCol.Width = 90         Dim myEstiloCol2 As New DataGridTextBoxColumn()        'Para Otro Campo        myEstiloCol2.MappingName = "au_lname"        myEstiloCol2.HeaderText = "Apellido"        myEstiloCol2.Width = 150         'agregando el primer estilo        myEstiloGrid.GridColumnStyles.Add(myEstiloCol)        'agrengando el segundo estilo        myEstiloGrid.GridColumnStyles.Add(myEstiloCol2)         'agrengando el estilo a la grilla        dgPubs.TableStyles.Add(myEstiloGrid)      End Sub 
puedes usar todas las columnas que quieras en este caso solo use dos.....

Una pregunta mas: se podra cambiar el tamaño de las columnas una vez llenado la Grilla, por ejemplo con ScroolBar, disminuir el tamaño de una colmna........

Sagma:
Agradesco a SerGhio y a CyberGatito por haberme colaborado en el desarrollo  :comp:

  :D  FUNCIONAAAaaaa  :kicking:

sergiotarrillo:
cuando tengas cualquier duda pasa la voz, que con cada pregunta uno se da cuenta que no sabe mucho, y es motivo para aprender un nuevo tema..

Navegación

[0] Índice de Mensajes

Ir a la versión completa