簡體   English   中英

Datagrid Wpf C#

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM