C# Telerik WinForms RadGridView创建和填充运行时
我的问题与此非常相似 但是我不想创建数据表 这是网格视图C# Telerik WinForms RadGridView创建和填充运行时,c#,winforms,gridview,grid,telerik,C#,Winforms,Gridview,Grid,Telerik,我的问题与此非常相似 但是我不想创建数据表 这是网格视图 GridView = new RadGridView { AutoSizeRows = true, BeginEditMode = RadGridViewBeginEditMode.BeginEditProgrammatically, Location = new Point(0, 130),
GridView = new RadGridView
{
AutoSizeRows = true,
BeginEditMode = RadGridViewBeginEditMode.BeginEditProgrammatically,
Location = new Point(0, 130),
Name = "GridView",
ShowRowErrors = false,
Size = new Size(390, 100),
TabIndex = 0,
Visible = false
};
此方法在运行时创建列
private List<GridViewTextBoxColumn> InitializeColumns()
{
var result = new List<GridViewTextBoxColumn>();
{
var columnId = new GridViewTextBoxColumn
{
Name = "RecordID",
HeaderText = "ID",
FieldName = "RecordID",
MaxLength = 50,
Width = 50,
DataType = typeof(int)
};
result.Add(columnId);
}
{
var columnInformation = new GridViewTextBoxColumn
{
Name = "RecordInformation",
HeaderText = "Information",
FieldName = "RecordInformation",
MaxLength = 50,
Width = 250,
DataType = typeof(string)
};
result.Add(columnInformation);
}
{
var columnRowType = new GridViewTextBoxColumn
{
Name = "RecordType",
HeaderText = "Type",
FieldName = "RecordType",
MaxLength = 50,
Width = 250,
DataType = typeof(string)
};
result.Add(columnRowType);
}
return result;
}
因此,我将列表绑定到网格视图。列显示良好,但不显示数据。必须有一个记录。我错过了什么?这是我放在表单上的全部代码,效果很好:
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
RadGridView GridView = new RadGridView
{
AutoSizeRows = true,
BeginEditMode = RadGridViewBeginEditMode.BeginEditProgrammatically,
Location = new Point(0, 130),
Name = "GridView",
ShowRowErrors = false,
Size = new Size(390, 100),
TabIndex = 0,
//Visible = false,
Parent = this
};
GridView.Columns.AddRange(InitializeColumns().ToArray());
List<OrderTripChangedAlertItem> list = new List<OrderTripChangedAlertItem>();
OrderTripChangedAlertItem item = new OrderTripChangedAlertItem(0, "some info", "some type");
list.Add(item);
GridView.DataSource = list;
}
private List<GridViewTextBoxColumn> InitializeColumns()
{
var result = new List<GridViewTextBoxColumn>();
{
var columnId = new GridViewTextBoxColumn
{
Name = "RecordID",
HeaderText = "ID",
FieldName = "RecordID",
MaxLength = 50,
Width = 50,
DataType = typeof(int)
};
result.Add(columnId);
}
{
var columnInformation = new GridViewTextBoxColumn
{
Name = "RecordInformation",
HeaderText = "Information",
FieldName = "RecordInformation",
MaxLength = 50,
Width = 250,
DataType = typeof(string)
};
result.Add(columnInformation);
}
{
var columnRowType = new GridViewTextBoxColumn
{
Name = "RecordType",
HeaderText = "Type",
FieldName = "RecordType",
MaxLength = 50,
Width = 250,
DataType = typeof(string)
};
result.Add(columnRowType);
}
return result;
}
internal class OrderTripChangedAlertItem
{
public int RecordID { get; set; }
public string RecordInformation { get; set; }
public string RecordType { get; set; }
public OrderTripChangedAlertItem(int recordID, string recordInformation, string recordType)
{
RecordID = recordID;
RecordInformation = recordInformation;
RecordType = recordType;
}
}
protected override void OnLoad(事件参数e)
{
基础荷载(e);
RadGridView GridView=新RadGridView
{
AutoSizeRows=true,
BeginEditMode=RadGridViewBeginEditMode.BeginEditProgrammatically,
位置=新点(0,130),
Name=“GridView”,
ShowRowErrors=false,
尺寸=新尺寸(390100),
TabIndex=0,
//可见=假,
父项=此
};
GridView.Columns.AddRange(InitializeColumns().ToArray());
列表=新列表();
OrderTripChangeDalerItem项=新的OrderTripChangeDalerItem(0,“某些信息”,“某些类型”);
列表。添加(项目);
GridView.DataSource=list;
}
私有列表初始化为columns()
{
var result=新列表();
{
var columnId=新的GridViewTextBoxColumn
{
Name=“RecordID”,
HeaderText=“ID”,
FieldName=“RecordID”,
最大长度=50,
宽度=50,
DataType=typeof(int)
};
结果.Add(columnId);
}
{
var columnInformation=新的GridViewTextBoxColumn
{
Name=“RecordInformation”,
HeaderText=“信息”,
FieldName=“记录信息”,
最大长度=50,
宽度=250,
数据类型=类型(字符串)
};
结果。添加(列信息);
}
{
var columnRowType=新的GridViewTextBoxColumn
{
Name=“RecordType”,
HeaderText=“Type”,
FieldName=“RecordType”,
最大长度=50,
宽度=250,
数据类型=类型(字符串)
};
结果.添加(columnRowType);
}
返回结果;
}
内部类OrderTripChangeDalerItem
{
public int RecordID{get;set;}
公共字符串记录信息{get;set;}
公共字符串记录类型{get;set;}
public OrderTripChangeDalerItem(int-recordID、string-recordInformation、string-recordType)
{
RecordID=RecordID;
记录信息=记录信息;
记录类型=记录类型;
}
}
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
RadGridView GridView = new RadGridView
{
AutoSizeRows = true,
BeginEditMode = RadGridViewBeginEditMode.BeginEditProgrammatically,
Location = new Point(0, 130),
Name = "GridView",
ShowRowErrors = false,
Size = new Size(390, 100),
TabIndex = 0,
//Visible = false,
Parent = this
};
GridView.Columns.AddRange(InitializeColumns().ToArray());
List<OrderTripChangedAlertItem> list = new List<OrderTripChangedAlertItem>();
OrderTripChangedAlertItem item = new OrderTripChangedAlertItem(0, "some info", "some type");
list.Add(item);
GridView.DataSource = list;
}
private List<GridViewTextBoxColumn> InitializeColumns()
{
var result = new List<GridViewTextBoxColumn>();
{
var columnId = new GridViewTextBoxColumn
{
Name = "RecordID",
HeaderText = "ID",
FieldName = "RecordID",
MaxLength = 50,
Width = 50,
DataType = typeof(int)
};
result.Add(columnId);
}
{
var columnInformation = new GridViewTextBoxColumn
{
Name = "RecordInformation",
HeaderText = "Information",
FieldName = "RecordInformation",
MaxLength = 50,
Width = 250,
DataType = typeof(string)
};
result.Add(columnInformation);
}
{
var columnRowType = new GridViewTextBoxColumn
{
Name = "RecordType",
HeaderText = "Type",
FieldName = "RecordType",
MaxLength = 50,
Width = 250,
DataType = typeof(string)
};
result.Add(columnRowType);
}
return result;
}
internal class OrderTripChangedAlertItem
{
public int RecordID { get; set; }
public string RecordInformation { get; set; }
public string RecordType { get; set; }
public OrderTripChangedAlertItem(int recordID, string recordInformation, string recordType)
{
RecordID = recordID;
RecordInformation = recordInformation;
RecordType = recordType;
}
}