【问题标题】:Dynamic Datagrid Binding in Silverlight?Silverlight 中的动态数据网格绑定?
【发布时间】:2012-02-20 09:52:11
【问题描述】:

我应该在代码中动态绑定数据网格。我写的代码如下。当我调试这个代码块时,它似乎可以正确绑定,但是网格在表单上没有列。

MyClass myInstance = new MyClass();
dataGridObject = new DataGrid();
dataGridObject.Width = 200;
dataGridObject.Height = 200;
binding = new Binding();
binding.Source = myInstance;
foreach (PropertyInfo prop in myInstance.GetType().GetProperties())
{
    binding.Path = new PropertyPath(prop.Name);
    DataGridTextColumn column = new DataGridTextColumn();
    column.Header = prop.Name;
    column.Binding = new Binding(prop.Name);
    dataGridObject.Columns.Add(column);
}

dataGridObject.ItemSource = myInstanceList;

虽然我做了必要的绑定,但为什么不带列网格? 感谢您提前回复..

【问题讨论】:

  • 您的代码应该可以工作,没有任何问题。也许为我们提供 MyClass 实例。另外,您是否检查了输出窗口以确保没有发生绑定错误?

标签: c# silverlight data-binding


【解决方案1】:

在这种情况下,为什么不将 Datagrid 的 AutoGenerateColumns 属性设置为 true?当此属性设置为 True 时,您正在编写的代码已为您完成。您所要做的就是将对象列表绑定到网格,列将由网格生成。

【讨论】:

    【解决方案2】:

    您的代码应该可以运行。您是否将 DataGrid 添加到可视化树中。例如

    LayoutRoot.Children.Add(dataGridObject)
    

    【讨论】:

      猜你喜欢
      • 2014-04-14
      • 2012-01-20
      • 2011-10-29
      • 2013-11-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-25
      • 1970-01-01
      相关资源
      最近更新 更多