ASP.NET如何定义要在Dynamic GridView用户控件中显示的列

时间:2011-09-19 14:31:00

标签: c# asp.net user-controls

我有一个包含GridView的用户控件。我在要显示它的页面后面的代码中创建了一个用户控件实例。由于数据源对于用户控件的不同实例可能不同,我如何定义在设置GridView用户时显示哪些列控制? (我不想显示数据源中的所有列)

我有以下代码:

gridView.DataSource = Query.ToArray();
            placeHolder1.Controls.Add(gridView);

以下用户控制代码中的代码:

this.GridView1.DataSource = DataSource;
            GridView1.DataBind();

任何想法如何做到这一点?

2 个答案:

答案 0 :(得分:1)

检查此代码,

  GridView.Columns[0].Visible = false;

在将数据源分配给gridview之后使用此行,将列索引或名称放在方括号中。

或者也查看此代码。

在您的DataBind()之前。写下这个:

GridView.DataBound += new EventHandler(GridView_DataBound);

在代码GridView_DataBound中创建此方法并在该方法中写入隐藏列的代码。

希望我的回答可以帮到你。

答案 1 :(得分:-1)

您可以从您使用它的页面将参数传递给usercontrol。对所有“columncollections”使用开关/大小写,然后从页面传递类型并更改列以适合页面。