如何将变量数据绑定到窗口窗体中的 GridView

本文关键字:窗体 GridView 窗口 变量 数据绑定 | 更新日期: 2023-09-27 18:35:21

大家好,我的程序中有一些变量在for循环中,变量的值将在for循环中动态出现。我想将这些值绑定到网格视图。我知道如何将SQL服务器数据绑定到网格。但是如何处理这里。如何排列列值。任何人都可以帮我吗?

我有这些变量

string changedFile  
int parentIssue 
List<String> Authors

我想将这 3 个字段添加到 for 循环的网格视图中。有没有办法写出 for 循环的一侧?

如何将变量数据绑定到窗口窗体中的 GridView

你可以试试这样的东西

public class BindingObject
{
    public int intMember;
    public string stringMember;
    public string nullMember;
    public BindingObject(int i, string str1, string str2)
    {
        intMember = i;
        stringMember = str1;
        nullMember = str2;
    }
} 
////Somewhere
ArrayList list = new ArrayList();
list.Add(new BindingObject(1, "One", null));
list.Add(new BindingObject(2, "Two", null));
list.Add(new BindingObject(3, "Three", null));
dataGrid1.DataSource = list;

只需将列表指定为数据源即可。

dataGridView1.DataSource = Rows;

您可以在 select 语句中排列列。

private System.Windows.Forms.DataGridViewComboBoxColumn Authors;
this.Authors.HeaderText = "Authors";
this.Authors.Name = "Authors";
this.dataGridView1.Columns.Add(this.Authors);
this.Authors.Items.AddRange(new object[] {
            "Ayn Rand",
            "Tagore"});

如果必须在循环本身中进行设置,则必须在aspx中为网格视图定义模板

<asp:GridView ID="gridViewField" ClientIDMode="Static"   runat="Server" AutoGenerateColumns="false"
               onrowdatabound="gridViewField_RowDataBound"  HorizontalAlign="Center"  AlternatingRowStyle-BackColor="#ddecfe" >
               <Columns>                   
                   <asp:TemplateField HeaderText="Field Name">
                       <ItemTemplate>
                           <asp:Label runat="server" ID="lblFieldName"></asp:Label>
                       </ItemTemplate>
                   </asp:TemplateField>
</columns>
</asp:GridView>

在 for 循环中,您可以获取代码隐藏 cs 文件中的每一行,如下所示

var lblFieldName= gridViewField.Rows[i].FindControl("lblFieldName") as Label
lblFieldName.Text=your loop data

我是你的循环变量