logo

关于 数据绑定时的数据项 的评论:

评论日期:2007年05月16日 00:00:00 评论人:
 孟子大哥:
   你主页上那个提醒收听音乐的那个是怎么做的啊?
评论日期:2007年06月10日 00:00:00 评论人:zsspri
孟大哥:
在这里问个问题:CSDN中问了没人解答:
在一个名为DataGrid1的DataGrid中模版列的定义如下:
其中在正常状态下为一个文本标签,编辑状态下为一个下拉列表框
<asp:TemplateColumn>       
   <HeaderTemplate>
       <b> 省 </b>
   </HeaderTemplate>                 
   <ItemTemplate>
      <asp:Label ID="Label1"
         Text=''<%#DataBinder.Eval(Container.DataItem,"Area")%>''
         runat="server"/>                  
   </ItemTemplate>
   <EditItemTemplate>
       <asp:DropDownList id="dpStatus2" runat="server" 
            DataTextField="status">
..........

        </asp:DropDownList>
   </EditItemTemplate>
</asp:TemplateColumn>    

问题是在DataGrid1的ItemDataBound中查找不到模版列中的控件(单步调试为NULL),为什么?
以下是我的代码:
public void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)   
{

  Label LabelTemp = (Label)People.FindControl("Label1");

  DropDownList dropTemp = (DropDownList)e.Item.FindContro("DropDownList1");     //这里dropTemp为空
}


评论日期:2007年06月10日 00:00:00 评论人:zsspri
顺便问一下:要做这样的功能怎么实现
一个DataGrid,加入了编辑功能:
定义了一个模板列,其中:
  功能1.在正常显示状态由一个标签显示(该标签绑定数据源中的Area字段)

  功能2.在编辑状态下由一个下拉列表框显示(里面有一些省份供选择),想要在单击''编辑''按钮后下拉列表中的默认值显示为正常状态下的那个标签中的文本。
  
  下拉列表框应该如何定义,又如何向列表中写入列表项,最重要的是如何才能实现''功能2''中的效果。

   下面是那个模板列的一个模子,请问该如何实现。
<asp:TemplateColumn>       
   <HeaderTemplate>
       <b> 省 </b>
   </HeaderTemplate>                 
   <ItemTemplate>
      <asp:Label ID="Label1"
         Text=''<%#DataBinder.Eval(Container.DataItem,"Area")%>''
         runat="server"/>                  
   </ItemTemplate>
   <EditItemTemplate>
       <asp:DropDownList id="dpStatus2" runat="server" 
            DataTextField="status">
..........

        </asp:DropDownList>
   </EditItemTemplate>
</asp:TemplateColumn> 
评论日期:2007年07月03日 00:00:00 评论人:
可以在进入编辑状态时再给下拉列表填值
评论日期:2007年07月30日 00:00:00 评论人:
有什么不好实现的么?
评论日期:2007年08月05日 00:00:00 评论人:yangyaoyun
怎样进入编辑状态时再给下拉列表填值
评论日期:2008年11月11日 11:43:32 评论人:alexqjf
大哥,请问我用gridview绑定objectdatasource
        protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                if (e.Row.RowState == DataControlRowState.Normal || e.Row.RowState == DataControlRowState.Alternate)
                {
                    Employee employee = (Employee)e.Row.DataItem;
                }
            }
        }
怎么不行呢?
发表评论:(由于众所周知的原因,评论需要审核后才能显示,请勿重复发评论。谢谢!!)
标题:
用户名:
内容:
验证码: 请输入右边图像中的文字。验证码