[英]Datagrid Wpf C#
我想在wpf中的datagrid中顯示數據。動態顯示數據的方法是什么?
Random rm = new Random();
Random rm2 = new Random();
string code = "034" + rm2.Next(0, 7);
string num = code + rm.Next(0, 9) + rm.Next(0, 9) + rm.Next(0, 9) + rm.Next(0, 9) + rm.Next(0, 9) + rm.Next(0, 9) + rm.Next(0, 9);
for (int i = 1; i <= 10000; i++)
{
code = "034" + rm2.Next(0, 7);
num = code + rm.Next(0, 9) + rm.Next(0, 9) + rm.Next(0, 9) + rm.Next(0, 9) + rm.Next(0, 9) + rm.Next(0, 9) + rm.Next(0, 9) ;
dataGrid1.ItemsSource = num.ToString();
}
Random rm = new Random();
Random rm2 = new Random();
string code = "034" + rm2.Next(0, 7);
List<string> numList = new List<string>();
string num = code + rm.Next(0, 9) + rm.Next(0, 9) + rm.Next(0, 9) + rm.Next(0, 9) + rm.Next(0, 9) + rm.Next(0, 9) + rm.Next(0, 9);
for (int i = 1; i <= 10000; i++)
{
code = "034" + rm2.Next(0, 7);
num = code + rm.Next(0, 9) + rm.Next(0, 9) + rm.Next(0, 9) + rm.Next(0, 9) + rm.Next(0, 9) + rm.Next(0, 9) + rm.Next(0, 9) ;
numList.Add(num);
}
dataGrid1.ItemsSource = numList;
以此更新您的代碼。 它應該工作。
希望這可以幫助!!
首先,您可以將所有num
值分配給List或Observable Collection。 然后,您可以將此列表或集合設置為您的數據網格的項目源。
List<string> numLst = new List<string>();
for (int i = 1; i <= 10000; i++)
{
code = "034" + rm2.Next(0, 7);
num = code + rm.Next(0, 9) + rm.Next(0, 9) + rm.Next(0, 9) + rm.Next(0, 9) + rm.Next(0, 9) + rm.Next(0, 9) + rm.Next(0, 9) ;
numLst.Add(num);
}
dataGrid1.ItemsSource = numLst;
您可以設置將IEnumerable
實現為DataGrid
ItemsSource
任何類型。
例如, ObservableCollection<T>
:
XAML:
<DataGrid Name="dataGrid"></DataGrid>
后台代碼:
public MainWindow()
{
FillDataGrid();
}
private void FillDataGrid()
{
ObservableCollection<Person> coll = new ObservableCollection<Person>();
for (int start = 0; start < 10; start++)
{
coll.Add(new Person() { IdPerson = start, Name = "Bill" + start.ToString(), SurName = "ONeill" });
}
dataGrid.ItemsSource = coll;
}
型號類別:
public class Person
{
public int IdPerson { get; set; }
public string Name { get; set; }
public string SurName { get; set; }
}
或使用DataTable:
public MainWindow()
{
FillDataGrid();
}
private DataTable employeeDataTable;
private void FillDataGrid()
{
employeeDataTable = new DataTable();
employeeDataTable = _ds.Tables.Add("DT");
for (int i = 0; i < 80; i++)
{
employeeDataTable.Columns.Add(i.ToString());
}
for (int i = 0; i < 100; i++)
{
var theRow = employeeDataTable.NewRow();
for (int j = 0; j < 80; j++)
{
theRow[j] = "a";
}
employeeDataTable.Rows.Add(theRow);
}
gridEmployees.ItemsSource = employeeDataTable.DefaultView;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.