我目前正在使用自定义画布,并且我必须添加一个表格,所以我认为 dataGrid 会很好。所以我想从“Datagrid”创建一个“表格”,用户可以在运行时将表格添加到画布。
到目前为止,我已经尝试使用列表填充 DataGrid 并成功。
如何在运行时将列添加到 Datagrid,以便在运行时使用文本框从用户那里获取列数和标题值,并根据文本框的值,数据网格应添加列和标题值。
实际上我想开发一个表格,其中用户传递列数和列标题,并且应该生成表格。
或者
“你能建议我一种我应该看的方式,以便使用 DrawingVisual 类“绘制”一个表格吗?
它是 GraphicsTable 类的一部分
//Custom Classes "DrawingCanvas & GraphicsTable"
public void CreateDataGrid(GraphicsTable graphicsTable, DrawingCanvas drawingCanvas)
{
dt = new DataGrid();
dt.Name = "Data";
dt.ItemsSource = person();
dt.AllowDrop = true;
dt.AutoGenerateColumns = true;
dt.Height = graphicsTable.Rectangle.Height;
dt.Width = graphicsTable.Rectangle.Width;
drawingCanvas.Children.Add(dt);
Canvas.SetTop(dt, graphicsTable.Rectangle.Top);
Canvas.SetLeft(dt, graphicsTable.Rectangle.Left);
dt.Width = dt.Width;
dt.Height = dt.Height;
dt.Focus();
}
//I have just tried to add dome dummy data to the datagrid.
public List<Person> person()
{
List<Person> peep = new List<Person>();
peep.Add(new Person() {});
return peep;
}
public class Person
{
private string name;
private double salary;
public string Names
{
get { return name; }
set { name = value; }
}
public double Salary
{
get { return salary; }
set { salary = value; }
}
}