public class Widget { public int id; public string Name; } public class WidgetCollection : System.Collections.CollectionBase,IList { public WidgetCollection():base() {
} public void Add(Widget aWidget) { List.Add(aWidget); } public void Remove(int index) { if (index > Count - 1 || index < 0) { System.Windows.Forms.MessageBox.Show("Index not valid!"); } else { List.RemoveAt(index); } } public void Update(int id,Widget aWidget) { Widget aaa = (Widget) List[id]; aaa.Name=aWidget.Name; } public int IndexOf(int id) {
return (List.IndexOf(id)); } public Widget this[int index] { get { return( (Widget) List[index] ); } set { List[index] = value; } } }
this.dataGrid1.SetDataBinding (ds,"表名");
解决了,结贴DataGridTableStyle partsTable = new DataGridTableStyle();partsTable.MappingName= "WidgetCollection[]"; DataGridTextBoxColumn partIdColumn = new DataGridTextBoxColumn();partIdColumn.MappingName= "Name"; partIdColumn.HeaderText = "Name"; partsTable.GridColumnStyles.Add(partIdColumn);dataGrid1.TableStyles.Clear(); dataGrid1.TableStyles.Add(partsTable);
DataGrid1.dataBind();
IList myList = ...;
DataGrid1.DataSource = myList;
DataGrid1.DataBind();
{
public int id;
public string Name; }
public class WidgetCollection : System.Collections.CollectionBase,IList
{ public WidgetCollection():base()
{
}
public void Add(Widget aWidget)
{ List.Add(aWidget);
} public void Remove(int index)
{ if (index > Count - 1 || index < 0)
{
System.Windows.Forms.MessageBox.Show("Index not valid!");
}
else
{
List.RemoveAt(index);
}
}
public void Update(int id,Widget aWidget)
{
Widget aaa = (Widget) List[id];
aaa.Name=aWidget.Name;
} public int IndexOf(int id)
{
return (List.IndexOf(id));
} public Widget this[int index]
{
get
{
return( (Widget) List[index] );
}
set
{
List[index] = value;
} } }
DataGridTextBoxColumn partIdColumn = new DataGridTextBoxColumn();partIdColumn.MappingName= "Name";
partIdColumn.HeaderText = "Name";
partsTable.GridColumnStyles.Add(partIdColumn);dataGrid1.TableStyles.Clear();
dataGrid1.TableStyles.Add(partsTable);