【发布时间】:2014-01-31 11:24:07
【问题描述】:
我有一个类型为 user site load 的对象列表,其中包含许多属性,我想隐藏其中一些属性,因为我不希望我的网格视图显示所有这些属性。 p>
我该怎么做?我使用 GridView.DataSource=MyListOfUserSiteLoadObjects;
public partial class Create : System.Web.UI.Page
{
public List<Entity.UserSiteLoad> MyTempList = new List<Entity.UserSiteLoad>();
public Entity.UserSiteLoad usl = new Entity.UserSiteLoad();
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Session["MyApplianceList"] = MyTempList;
}
}
protected void BtnAddNext_Click(object sender, EventArgs e)
{
List<Entity.UserSiteLoad> LstUsl = (List<Entity.UserSiteLoad>)Session["MyApplianceList"];
usl.Applianc = new Entity.Appliance();
usl.Applianc.Name = DDLAppName.Text;
usl.Quantity = Convert.ToInt32(QtyTB.Text);
usl.DayTime = Convert.ToInt32(DayTymTB.Text);
usl.BackUpTime = Convert.ToInt32(BackUpTymTB.Text);
if (LstUsl.Count != 0)
{
for (int rowIndex = 0; rowIndex < LstUsl.Count; rowIndex++)
{
string AppName = LstUsl[rowIndex].Applianc.Name;
if (AppName == DDLAppName.Text)
{
LstUsl.Remove(LstUsl[rowIndex]);
}
}
}
if (LstUsl.Count == 0 || LstUsl.Count > 0)
{
LstUsl.Add(usl);
}
AllItems.DataSource = LstUsl;
AllItems.DataBind();
AllItems.Visible = true;
Response.Write("It has: " + AllItems.Attributes.Count);
}
}
第二个问题:我想在我的 GridView 中添加一个名为 "Appliance name" 的列,并将其值设置为 usl .Applianc.Name , Applianc 是用户站点加载对象内的聚合对象。
这怎么可能?
【问题讨论】:
-
将 AutogenerateColumns 设置为 false 并明确指定必须显示的所有列。