Velocity Reviews

Velocity Reviews (http://www.velocityreviews.com/forums/index.php)
-   ASP .Net (http://www.velocityreviews.com/forums/f29-asp-net.html)
-   -   dynamic column/fields (http://www.velocityreviews.com/forums/t116868-dynamic-column-fields.html)

=?Utf-8?B?RVI=?= 01-07-2006 08:05 AM

dynamic column/fields
 
Hi,

I would like to create a datagrid or free entry form with dynamic columns
based on the user selection, do you have any ideas or samples?

Any help would be appreciated!

ER

=?Utf-8?B?UGhpbGxpcCBXaWxsaWFtcw==?= 01-07-2006 06:41 PM

RE: dynamic column/fields
 
The datagrid server control provides a property named AutoGenerateColumns
that would allow the grid to display any number of columns that are on the
datatable.
http://msdn2.microsoft.com/en-us/lib...tecolumns.aspx

You can make the datagrid editable by adding an EditCommandColumn
http://msdn2.microsoft.com/en-us/lib...andcolumn.aspx

Another alternative is to turn the AutoGenerateColumns to false and then
compose the columns programmatically during databinding like this:
private void dgItems_DataBinding(object sender, System.EventArgs e)
{
DataTable dt = (DataTable)dgItems.DataSource;
for( int c=1; c<dt.Columns.Count; c++ )
{
BoundColumn bc = new BoundColumn();
bc.DataField = dt.Columns[c].ColumnName;
bc.HeaderText = dt.Columns[c].ColumnName;
dgItems.Columns.Add( bc );
}
}

--
HTH,
Phillip Williams
http://www.societopia.net
http://www.webswapp.com


"ER" wrote:

> Hi,
>
> I would like to create a datagrid or free entry form with dynamic columns
> based on the user selection, do you have any ideas or samples?
>
> Any help would be appreciated!
>
> ER


=?Utf-8?B?RVI=?= 01-09-2006 07:46 AM

RE: dynamic column/fields
 
Thanks Phillip. For the second solution, would that affect the performance if
the datagrid has significant data to display?

Thanks,
ER

"Phillip Williams" wrote:

> The datagrid server control provides a property named AutoGenerateColumns
> that would allow the grid to display any number of columns that are on the
> datatable.
> http://msdn2.microsoft.com/en-us/lib...tecolumns.aspx
>
> You can make the datagrid editable by adding an EditCommandColumn
> http://msdn2.microsoft.com/en-us/lib...andcolumn.aspx
>
> Another alternative is to turn the AutoGenerateColumns to false and then
> compose the columns programmatically during databinding like this:
> private void dgItems_DataBinding(object sender, System.EventArgs e)
> {
> DataTable dt = (DataTable)dgItems.DataSource;
> for( int c=1; c<dt.Columns.Count; c++ )
> {
> BoundColumn bc = new BoundColumn();
> bc.DataField = dt.Columns[c].ColumnName;
> bc.HeaderText = dt.Columns[c].ColumnName;
> dgItems.Columns.Add( bc );
> }
> }
>
> --
> HTH,
> Phillip Williams
> http://www.societopia.net
> http://www.webswapp.com
>
>
> "ER" wrote:
>
> > Hi,
> >
> > I would like to create a datagrid or free entry form with dynamic columns
> > based on the user selection, do you have any ideas or samples?
> >
> > Any help would be appreciated!
> >
> > ER


=?Utf-8?B?UGhpbGxpcCBXaWxsaWFtcw==?= 01-09-2006 03:56 PM

RE: dynamic column/fields
 
I think that the performance would be the same.

If the only requirement in building the datagrid were to display all columns
without exception, such as the sample code below, then I prefer using the
declarative syntax (the first solution) because it makes the code more
readable and easily maintainable (one can change it without recompiling the
application).

If, on the other hand, one has to use different conditions for columns that
may or may not be provided in the data or if one has to hide particular
columns if they happen to exist in the data then the second approach would
work better.
--
HTH,
Phillip Williams
http://www.societopia.net
http://www.webswapp.com


"ER" wrote:

> Thanks Phillip. For the second solution, would that affect the performance if
> the datagrid has significant data to display?
>
> Thanks,
> ER
>
> "Phillip Williams" wrote:
>
> > The datagrid server control provides a property named AutoGenerateColumns
> > that would allow the grid to display any number of columns that are on the
> > datatable.
> > http://msdn2.microsoft.com/en-us/lib...tecolumns.aspx
> >
> > You can make the datagrid editable by adding an EditCommandColumn
> > http://msdn2.microsoft.com/en-us/lib...andcolumn.aspx
> >
> > Another alternative is to turn the AutoGenerateColumns to false and then
> > compose the columns programmatically during databinding like this:
> > private void dgItems_DataBinding(object sender, System.EventArgs e)
> > {
> > DataTable dt = (DataTable)dgItems.DataSource;
> > for( int c=1; c<dt.Columns.Count; c++ )
> > {
> > BoundColumn bc = new BoundColumn();
> > bc.DataField = dt.Columns[c].ColumnName;
> > bc.HeaderText = dt.Columns[c].ColumnName;
> > dgItems.Columns.Add( bc );
> > }
> > }
> >
> > --
> > HTH,
> > Phillip Williams
> > http://www.societopia.net
> > http://www.webswapp.com
> >
> >
> > "ER" wrote:
> >
> > > Hi,
> > >
> > > I would like to create a datagrid or free entry form with dynamic columns
> > > based on the user selection, do you have any ideas or samples?
> > >
> > > Any help would be appreciated!
> > >
> > > ER



All times are GMT. The time now is 01:17 PM.

Powered by vBulletin®. Copyright ©2000 - 2014, vBulletin Solutions, Inc.
SEO by vBSEO ©2010, Crawlability, Inc.