首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在要绑定到网格视图的对象列表中隐藏其他属性

在要绑定到网格视图的对象列表中隐藏其他属性
EN

Stack Overflow用户
提问于 2014-01-31 11:24:07
回答 1查看 107关注 0票数 0

我有一个具有许多属性的用户站点加载类型的对象列表,我想隐藏其中一些属性,因为我不希望网格视图显示所有这些属性。

我该怎么做呢?我使用GridView.DataSource=MyListOfUserSiteLoadObjects;

代码语言:javascript
运行
复制
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);


    }
}

第二个问题:我想向我的usl.Applianc.Name GridView添加一个名为"Appliance“的列,并将其值设置为Applianc用户站点加载对象E 216中的聚合对象。

这怎么可能呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-01-31 13:54:48

应该将<asp:GridView />元素的<asp:GridView />属性配置为false,并手动配置/绑定列。

下面的堆栈将让您了解如何做到这一点:

Manually binding data to Gridview

显然,您应该并且可以将您自己的集合绑定到DataSource属性。

我认为您的代码隐藏可以保持原样,您只需更改一些标记:

代码语言:javascript
运行
复制
<asp:GridView ID="AllItems" runat="server" AutoGenerateColumns="false">
    <Columns>
        <asp:BoundField DataField="PropA" HeaderText="Property A" />
        <asp:BoundField DataField="PropB" HeaderText="Property B" />
        <!-- ... -->
    </Columns>
</asp:GridView>
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21478906

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档