我是DevExpress控件的新手,我遇到了一个主 - 详细网格视图的问题。
我正在使用DXperience-11.2。
我可以通过执行以下操作轻松地将对象绑定到父GridView:
var myObject = myObject.Retrieve(id);
parentGridView.DataSource = myObject;
parentGridView.DataBind();
我很难绑定到嵌套的子GridView。我正在使用以下代码(因为我之前使用过很多次嵌套的asp:Repeaters),但生成的var childGrid对象始终为null。
var childGrid = (ASPxGridView)parentGridView.FindControl("childGridView");
var myObject2 = myObject2.Retrieve(id);
childGrid.DataSource = myObject2;
childGrid .DataBind();
非常感谢任何帮助。
此致 克里斯
答案 0 :(得分:0)
好的感谢您发布的建议,但我设法提出了解决方案。
我将以下事件添加到父网格视图...
OnBeforePerformDataSelect="detailGrid_DataSelect"
单击父网格视图中的行时会触发此事件。父网格视图行将展开并触发事件。
然后在我的代码后面我做了以下代码......
protected void detailGrid_DataSelect(object sender, EventArgs e)
{
var myObject2 = myObject2.Retrieve(id);
ASPxGridView grid = (sender as ASPxGridView);
grid.DataSource = myObject2;
}
首先,我检索了想要绑定到嵌套/子GridView的对象。然后将对象发送者强制转换为ASPxGridView对象并绑定我检索的数据对象。
我出错了,因为我试图在此事件中使用.FindControl方法找到嵌套的GridView控件,而实际上对象发送方是嵌套的GridView对象。
希望这能帮助那些和我一样腌菜的人!
克里斯