Format datagrid column width

This is .net CF Datagrid for windows mobile using VS 2005.
My code does not throw errors but it does not work.
I just want to set the width of a column
Private Sub MenuItem3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem3.Click
        'Populate windows DataGridView control
        DataGrid1.DataSource = webref.GetBulletins(InputBox("Enter part of name to search for: ", "Retrieve Bulletins"))
 
 
        ' *** NONE OF THESE EFFORTS  TO FORMAT GRID COLUMNS WERE SUCCESSFUL
        Debug.Write("Mapping Name:" & DataGrid1.TableStyles.Item(0).MappingName.ToString)
        Debug.Write(" TableStyle:" & DataGrid1.TableStyles.Item(0).ToString)
        Dim ts As New DataGridTableStyle
        'ts = DataGrid1.TableStyles.Item(0)
        ts.MappingName = DataGrid1.TableStyles.Item(0).ToString
 
        Dim aCol1 As New DataGridTextBoxColumn
        Debug.Write(" aCol1.MappingName: " & aCol1.MappingName.ToString)
        With aCol1
            .MappingName = "IDKey"
            .Width = 5
            .HeaderText = "Delete me"
        End With
 
        With ts.GridColumnStyles
            .Add(aCol1)
        End With
        DataGrid1.TableStyles.Add(ts)
 
        Debug.Write(" Count of GridColumn Styles" & ts.GridColumnStyles.Count)
        
        ' ***
 
    End Sub

Open in new window

swendellAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

kaylanreilorCommented:
Perhaps the mapping name of the DataGridTableStyle is not good in your code. If you have a look to the documentation here (http://msdn.microsoft.com/en-us/library/system.windows.forms.datagrid.tablestyles(VS.80).aspx - or choose another framework if you prefer from the same page) they are setting the mapping name with the matching table name. Probably your code should be something around this:
(depending what is the source of your DataGrid)
' dt is a table set with myDataSetSource.Tables(0)
ts.MappingName = dt.TableName

Open in new window

0
swendellAuthor Commented:
kaylanreilor,

Thank you for the reply. Not many people on EExchange seem to work in this area. As you can see, I get my datasource from a webservice:
DataGrid1.DataSource = webref.GetBulletins

So I guess I need to know how to ask at run time for the datatable name since I don't know what it is. Can you help me figure that out? Once I know the name; I can use it in my code as you suggested for the Mappingname. Maybe something like:
Debug.Write("Table name that should be used for MappingName:" & datagrid1.DataSource.?????).
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
swendellAuthor Commented:
OK, I figured out how to find the name of the table to use for the .MappingName when the datagrid's datasource is a web service. I simply invoked the web service in my web browser and the.XML response contained the table name I needed to use. In the example below it is: Bulletins.  


 <?xml version="1.0" encoding="utf-8" ?> 
- <DataTable xmlns="http://tempuri.org/">
- <xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
- <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:MainDataTable="Bulletins" 

Open in new window

0
kaylanreilorCommented:
So, are going to code something like this now:
ts.MappingName = NewDataSet.Tables("Bulletins").TableName ? :) funny
Or just give a first try by hard coding
ts.MappingName = "Bulletins" ?
0
swendellAuthor Commented:
Correct, this worked
ts.MappingName = "Bulletins"
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
.NET Programming

From novice to tech pro — start learning today.