【问题标题】:How to pass codebehind value to HeaderTemplate label control of Gridview UI如何将代码隐藏值传递给 Gridview UI 的 HeaderTemplate 标签控件
【发布时间】:2012-01-02 11:02:32
【问题描述】:

在 ASP.NET 中使用 C#、.NET3.5 F/W

嗨,

我有一个包含文本框和标签控件的模板列的 Gridview。

通过一些查询和存储过程的代码,我得到了一些数据到数据表中。现在我想将此数据表列字段或名称传递给 Gridview 标签控件。

如何将数据表列标题名称设置为标题模板的gridview标签控件?

【问题讨论】:

    标签: c# asp.net .net-3.5


    【解决方案1】:

    叫做绑定here is link

    <asp:TemplateColumn>
             <ItemTemplate HeaderText="PersonId">
                    <asp:Label id=Label1 runat="server"  
                       Text='<%# Eval("NameOfColumnt") %>'>
                    </asp:Label>
       </ItemTemplate>   
    </asp:TemplateColumn>
    

    【讨论】:

    • @Lam:我有数据表列字段名称。这些字段要设置为 GridView。这个怎么办??
    【解决方案2】:

    试试这个

    <asp:TemplateColumn >
            <ItemTemplate>
                   <asp:Label id=Label1 runat="server"  
                      Text='<%# DataBinder.Eval(Container,EmployeeName") %>'>
                   </asp:Label>
    
            </ItemTemplate>
      </asp:TemplateColumn>
    

    【讨论】:

    • Faheem:我更新了问题的主题。请提供相同的。
    【解决方案3】:

    为此,您必须为网格视图提供数据源:

    yourGridView.DataSource = yourDataTable;
    yourGridView.DataBind();
    

    完成此操作后,您只需要将模板列中的每个控件链接到数据表中的列,例如:

    <HeaderTemplate>SomeText</HeaderTemplate>
                    <ItemTemplate>
                    <asp:Label ID="a" Text='<%# Eval("nameOfTheColumn") %>' runat="server"></asp:Label>
                    </ItemTemplate>
    

    编辑: 关于您的其他问题,我建议您将绑定字段动态添加到您的网格视图中,而不是立即在 aspx 中。像这样的:

    foreach (DataColumn column in dt.Columns)
            {
                BoundField nameColumn = new BoundField();
                nameColumn.DataField = column.ColumnName.ToString();
                nameColumn.SortExpression = column.ColumnName.ToString();
                nameColumn.HeaderText = column.ColumnName.ToString();
    
                gridView.Columns.Add(nameColumn);
            }
    

    这样您就不必确切知道您有多少列,并且能够按照它们在数据表中的位置来命名它们。

    【讨论】:

    • 请参阅问题的更新主题。我想要标题模板信息。假设我的数据表列标题中可能有 Dotnet 或 Java 或 Mainframe 等。现在我也想设置为 Grid 的那些标题...请帮助
    • @Markan- 我不需要添加列。我有固定的列数。但从数据表我想使用这些列标题calues到gridview标题
    • 如果我没记错的话,您仍然需要动态添加列来为它们提供自定义标题文本。阅读:[链接]codeproject.com/KB/aspnet/…
    猜你喜欢
    • 2011-01-10
    • 2019-03-30
    • 1970-01-01
    • 1970-01-01
    • 2018-12-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-30
    相关资源
    最近更新 更多