在TextBox中输入值以后,点Button,然后在GridView里面列出包含输入关键字的项目,怎么做呢?

解决方案 »

  1.   

    浣跨敤GridView鐨刣atasource鐨勮繃婊ゅ姛鑳斤紝鐒跺悗閲嶆柊閭﹂《
      

  2.   

    how di the GridView bind ?maybe you can rebind on Button Click event
      

  3.   

    这是一个模糊查询啊。应该没什么难度吧
    查询后得到的dataset绑定到gridview的datasource就可以啦
    不过先要把gridview的datasourceID置为null,因为datasource和datasourceID不能同时可用
      

  4.   

    textbox.text做查询条件,查询后得到的dataset.table["xxx"]绑定到gridview的datasource就可以啦
      

  5.   

    根据你的查询条件重新绑定到GridView上
      

  6.   

    <form id="form1" runat="server">
            <asp:GridView ID="GridView1" runat="server" DataSourceID="SqlDataSource1">
            </asp:GridView>
            <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="Data Source=.;Initial Catalog=Test;User ID=sa;pwd=sa"
                ProviderName="System.Data.SqlClient" SelectCommand="SELECT * FROM [Student] where Name like '%'+@Name+'%'">
                <SelectParameters>
                    <asp:ControlParameter ControlID="TextBox1" Name="Name" Type="String" />
                </SelectParameters>
                </asp:SqlDataSource>
            <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" />
         
         <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
        </form>   protected void Button1_Click(object sender, EventArgs e)
        {
            this.GridView1.DataBind();
        }
      

  7.   

    cpp2017(慕白兄) 
    首先感谢您回答我的问题,我按照您的做法做了,在测试查询里面能查到我需要的数据了,但是我运行后,在TextBox里输入了要查询的字符,点确定按钮,就不能实现,请问是哪儿没设置对吗?
      

  8.   

    protected void Page_Load(object sender, EventArgs e)
        {
            sql = "select ID,city_cname,city_ename,city_code from PD_City  order by city_cname desc";
            if (!Page.IsPostBack)
            {
                GridviewBind(sql);
            }
        }private void GridviewBind(string sql)
        {
               conn.Open();
                SqlDataAdapter myda = new SqlDataAdapter(sql, conn);
                DataSet ds = new DataSet();
                myda.Fill(ds);
                GridView1.DataSource = ds;
                GridView1.DataBind();
       }protected void btnFind_Click(object sender, EventArgs e)
        {
            sql = "select ID,city_cname,city_ename,city_code from PD_City where  city_cname like '%" + tbSearch.Text + "%'";
            GridviewBind(sql);
        }
      

  9.   

    protected void Button1_Click(object sender, EventArgs e)
        {
            this.GridView1.DataBind();
        }我绑定了按钮事件的,还是没对呢
      

  10.   

    //页面代码<form id="form1" runat="server">
        <div>
            <asp:GridView ID="GridView1" runat="server" DataSourceID="SqlDataSource1">
            </asp:GridView>
            <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:CaseManageDBConnectionString %>" SelectCommand="SELECT * FROM [AnJianTable] where AJName like '%'+@AJName+'%'">
                <SelectParameters>
                    <asp:Parameter Name="AJName" />
                </SelectParameters>
                </asp:SqlDataSource>
            <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" />
         
         <asp:TextBox ID="TextBox1" runat="server" AutoPostBack="True"></asp:TextBox>
         </div>
        </form>//按钮事件
    protected void Button1_Click(object sender, EventArgs e)
        {
            this.GridView1.DataBind();    }在TextBox里面输入了东西,但是就是查不出来,不能在GridView里面显示。
      

  11.   

    加上textBOX的onClick属性事件,通过add.arrtribude 来
      

  12.   

    怎么做呢?不太明白,呵呵,谢谢了
    感觉就是Textbox里面的东西发不回去,查询不了
      

  13.   

    或者拖个label,设置为不可见,PAGE——LOAD的时候把TEXTBOX值传给LABEL,把GRIDVIEW绑顶到LABEL控件上,再设置个默认值(我就这么干的)
      

  14.   

    PAGE——LOAD 打错了,呵呵,应该是button_click
      

  15.   

    /// <summary>
        /// 模糊查询
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void btnSearch_Click(object sender, EventArgs e)
        {
            string sqlSelect = "select * from t_users ,t_myinfo  where u_username like '%" + txtUserName.Text + "%' or i_name like'%" + txtUserName.Text + "%'";
            SQLTool tool = new SQLTool();
            this.gvUserManager.DataSource = tool.dataTable(sqlSelect);
            this.gvUserManager.DataBind();
        }
      

  16.   

    http://community.csdn.net/Expert/topic/5575/5575546.xml?temp=.2234003
      

  17.   

    改一下你的页面代码,cs代码不用改//页面代码
        <form id="form1" runat="server">
        <div>
                <asp:GridView ID="GridView1" runat="server"  DataSourceID="SqlDataSource1">
                </asp:GridView>
                <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:CaseManageDBConnectionString %>"
                    SelectCommand="SELECT * FROM [AnJianTable] WHERE ([AJName] LIKE '%' + @AJName + '%')">
                    <SelectParameters>
                        <asp:ControlParameter ControlID="TextBox1" DefaultValue="1" Name="AJName" PropertyName="Text"
                            Type="String" />
                    </SelectParameters>
                </asp:SqlDataSource>
                <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
                <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" />
        </div>
        </form>
    //按钮事件
    protected void Button1_Click(object sender, EventArgs e)
        {
            this.GridView1.DataBind();
        }
      

  18.   

    kongwei521(蝶恋花雨) ( ) 信誉:100    Blog   加为好友  2007-6-1 21:23:57  得分: 0  
     
     
       
    /// <summary>
        /// 模糊查询
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void btnSearch_Click(object sender, EventArgs e)
        {
            string sqlSelect = "select * from t_users ,t_myinfo  where u_username like '%" + txtUserName.Text + "%' or i_name like'%" + txtUserName.Text + "%'";
            SQLTool tool = new SQLTool();
            this.gvUserManager.DataSource = tool.dataTable(sqlSelect);
            this.gvUserManager.DataBind();
        }  
     正解