2011-04-11 71 views
0

我有一个master -detail视图。在girdview我有一个按钮Detailsview不显示

<asp:LinkButton ID="btnViewDetails" runat="server" text="Edit" CommandName="Select" CommandArgument='<%# Eval("BoundFieldId") %>'></asp:LinkButton> 

现在在RowCommand,我做

DetailsView1.ChangeMode(DetailsViewMode.Edit); 
    if (e.CommandName.Equals("Select")) 
     { 
      var value = Convert.ToInt32(e.CommandArgument); 
      using (var dataContext = new xxxDataContext(Config.xxxConnectionString)) 
      { 
       var dataList = (from t in dataContext.tableName 
           where te.Id == Convert.ToInt32(value) 
           select t).ToList(); 
       DetailsView1.DataSource = dataList; 
       DetailsView1.DataBind(); 

      } 

,但我不能看到我的详细信息查看和它不绑定我guess.Why ????我试图从2天以来,贴多次帮我请

+0

你是否在row命令中放置了一个断点来查看是否所有的东西都被执行了? – 2011-04-11 11:13:19

回答

1

我刚刚测试你的方法,一切似乎都很好。我想检查的事情是:

1)检查,实际上是有与数据库

2)ID数据确保你的GridView在源视图中的“onrowcommand”事件有线起来 - 应该看起来像这样:

<asp:GridView ID="GridView1" runat="server" onrowcommand="GridView1_RowCommand"> 

你可以在onrowcommand处理程序中放置一个断点吗?

+0

嗨,感谢你们两位的回应。,是的,它触发了事件,dataList返回数据库中的确切行数。 – pinki 2011-04-11 13:53:01

+0

pinki 2011-04-11 13:53:51

+0

很奇怪。在页面的PreRender事件中是否有任何代码可能导致它重新绑定?在涉及DetailsView的所有内容中都放置一个断点。否则,我会退后一步,创建一个带有GridView,DetailsView和一些虚拟数据的空白页面,看看我能否获得一个真正的基本示例,然后逐渐增加复杂性。 – 2011-04-11 17:42:00

相关问题