Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

Customize the column of Datagrid in VB.net

Posted on 2004-03-23
4
Medium Priority
?
543 Views
Last Modified: 2012-06-27
In the VB.net from the Database I am getting the following columns
Emp_Name, Rate_of_change and Salary

In the DataGrid I want to customize this columns as with the
following captions

Employee name
Rate of Change
Salary

correspondingly I want to set the width as

500 (for Employee name)
280 (for Rate of Change)
350 (for Salary)

Could you please let me know how to do this

Thanks
0
Comment
Question by:jra2002
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
4 Comments
 
LVL 15

Expert Comment

by:OMC2000
ID: 10657958
myDataGrid.TableStyles[0].GridColumnStyles[0].Width = 500
 myDataGrid.TableStyles[0].GridColumnStyles[1].Width = 280
 myDataGrid.TableStyles[0].GridColumnStyles[2].Width = 350

0
 
LVL 10

Expert Comment

by:GoodJun
ID: 10657977
right click the grid and select grid builder to customize it.
0
 
LVL 2

Expert Comment

by:HugoCode
ID: 10658236
The easiest way to change the column header would be modifying your statement.
F.e.:
Instead of
"Select [ID], description from xyz"
You can use
"Select MyColumn1=[ID], MyColumn2=description from xyz"

Thats not beautiful, but is the simplest way to solve it.
A better method would be:

Dim oTable As New DataTable("test")
Dim oRead As New SqlClient.SqlDataAdapter("Select ID, description from xyz", oCon)
oRead.Fill(oTable)
oTable.Columns(0).ColumnName = "myCol_Identifier"
oTable.Columns(1).ColumnName = "myCol_Text"
DataGrid1.DataSource = oTable

Notice that this will only work if you set the Datasource member of datagrid1 at runtime!
0
 
LVL 4

Accepted Solution

by:
Jarodtweiss earned 750 total points
ID: 10661202
As OMC2000 as said, the best way to do that is to use the TableStyles.
If you don't provide anything, .NET will build one itself, very basic.

In the designer, add a new TableStyle and then add some columns.
For this to work, you must :
- Set a name to your DataTable : myTable.Name = "MyTable"
- Set the MappingName for the Table style to your table name "MyTable"
- For each column, set the mapping name to the name of your datatables column

Then you can customize a lot : Width, readonly, maxlength, ....

Be Careful !
The settings of the table style (backcolor, ...) override the settings of the datagrid.
So you have to set your settings there !
0

Featured Post

Free learning courses: Active Directory Deep Dive

Get a firm grasp on your IT environment when you learn Active Directory best practices with Veeam! Watch all, or choose any amount, of this three-part webinar series to improve your skills. From the basics to virtualization and backup, we got you covered.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

The object model of .Net can be overwhelming at times – so overwhelming that quite trivial tasks often take hours of research. In this case, the task at hand was to populate the datagrid from SQL Server database in Visual Studio 2008 Windows applica…
This article describes relatively difficult and non-obvious issues that are likely to arise when creating COM class in Visual Studio and deploying it by professional MSI-authoring tools. It is assumed that the reader is already familiar with the cla…
Monitoring a network: how to monitor network services and why? Michael Kulchisky, MCSE, MCSA, MCP, VTSP, VSP, CCSP outlines the philosophy behind service monitoring and why a handshake validation is critical in network monitoring. Software utilized …
Visualize your data even better in Access queries. Given a date and a value, this lesson shows how to compare that value with the previous value, calculate the difference, and display a circle if the value is the same, an up triangle if it increased…

688 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question