是页面回传的问题,你可以使用Session就行了

解决方案 »

  1.   

    你在DataBound事件中,判断是否e.Item.listype=item然后用e.item.cel[i].Text就可以得到啦。
      

  2.   

    我用的是DataGrid,这样写也不行:
        private void DataList1_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
    {
    switch (e.CommandName)
    {
    case "lb":
    string str = "";
    TextBox tb = new TextBox();

    if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
    { tb = (TextBox)e.Item.FindControl("textHF");
    }
    SqlConnection sqlCon = new SqlConnection(ConfigurationSettings.AppSettings ["conStr"].ToString());

    string updateCmd = "update MessageBook set Message_content='"+tb.Text+"' where  Message_id='"+DataList1.DataKeys[e.Item.ItemIndex]+"'";
    SqlCommand myCommand = new SqlCommand(updateCmd,sqlCon);
    Response.Write(updateCmd);
    sqlCon.Open();
    myCommand.ExecuteNonQuery();
    sqlCon.Close();
    BindGrid();
    break;
    default:
    break;
    }
    }
      

  3.   

    我在模板列文本框中输入值后,点击模板列按钮就会执行上面的事件,可是没有办法在sql语句中获得文本框的值,
    谁能帮我看看是怎么回事啊?
      

  4.   

    <asp:datagrid id="DataList1" runat="server" Font-Size="12px" CellPadding="4" BorderWidth="0px"
    BorderStyle="None" PageSize="15" ShowHeader="False" AutoGenerateColumns="False">
    <Columns>
    <asp:TemplateColumn>
    <ItemTemplate>
    <FONT face="宋体"><FONT face="宋体">
    <TABLE id="Table7" style="WIDTH: 749px; HEIGHT: 112px" borderColor="#efefef" cellSpacing="0"
    cellPadding="4" width="749" bgColor="#efefef" border="1">
    <TR class="td1" bgColor="#fafafa">
    <TD style="WIDTH: 200px; HEIGHT: 23px" bgColor="#ffffff"><STRONG>姓名:</STRONG>
    <asp:Label id=Label5 runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.Message_Con_id").ToString() %>'>
    </asp:Label>&nbsp;&nbsp;
    </TD>
    <TD style="WIDTH: 150px; HEIGHT: 23px" bgColor="#ffffff"><STRONG><FONT face="宋体">时间</FONT></STRONG><STRONG><FONT face="宋体">:</FONT></STRONG>
    <asp:Label id=Label4 runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.Message_SendTime").ToString() %>'>
    </asp:Label></TD>
    <TD style="HEIGHT: 23px" bgColor="#ffffff"><STRONG><STRONG>E-Mail</STRONG><STRONG>:
    <asp:HyperLink id=HyperLink1 runat="server" NavigateUrl='<%# "mailto:"+DataBinder.Eval(Container, "DataItem.Message_mail").ToString() %>' Text='<%# DataBinder.Eval(Container, "DataItem.Message_mail").ToString() %>'>
    </asp:HyperLink></STRONG></STRONG></TD>
    </TR>
    <TR class="td1">
    <TD bgColor="#ffffff" colSpan="3">
    <asp:Label id=Label1 runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.Message_content").ToString() %>'>
    </asp:Label></TD>
    </TR>
    <TR>
    <TD bgColor="#ffffff" colSpan="3">
    <P><FONT face="宋体">
    <asp:TextBox id="textHF" runat="server" Width="514px" TextMode="MultiLine"></asp:TextBox></FONT></P>
    </TD>
    </TR>
    <TR>
    <TD bgColor="#ffffff" colSpan="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT face="宋体">
    <asp:LinkButton id="linkHf" runat="server" Font-Size="X-Small" CommandName="lb">回复</asp:LinkButton></FONT></TD>
    </TR>
    </TABLE>
    </FONT></FONT>
    </ItemTemplate>
    </asp:TemplateColumn>
    </Columns>
    <PagerStyle Visible="False"></PagerStyle>
    </asp:datagrid></P>