在C#中动态地将数据源添加到gridview [英] adding a data source to the gridview dynamically in C#

查看:80
本文介绍了在C#中动态地将数据源添加到gridview的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在这里,我尝试按照复选框列表中的选择绑定gridview.
执行时,我只会得到空白页.谁能指出是什么错误?

Here i have tried to do bind the gridview as per the selection in the checkboxlist.
I''m getting only blank page when its executed. can any one specify what''s the mistake?

protected void Button1_Click(object sender, EventArgs e)
    {
        String query = "Select Proj_id,Proj_name,Front_end,Back_end from Proj_details where Front_end = 'Android'";
        String[] frontend ={ "Android", "Asp", "Asp.net", "C#.net", "J2EE", "Java", "Matlab", "NS2", "PHP", "VB", "VB.net" };
        try
        {
            for (int i = 0; i <= CheckBoxList1.Items.Count; i++)
            {
                if (CheckBoxList1.Items[i].Selected)
                    query = query.Insert(query.Length, frontend[i] + "','");
            }

            con.Open();
            query = query.Remove(query.Length - 1);
            query = query.Remove(query.Length - 1);
            query = query.Insert(query.Length, ")");
            SqlDataAdapter sqlada = new SqlDataAdapter(query, con);
            DataSet ds = new DataSet();
            sqlada.Fill(ds, "Proj_details");


            gv_search_project.DataSource = ds.Tables[0];
            gv_search_project.DataBind();



        }
        catch (Exception ex)
        {
           
        }
        finally
        {
           
            Label1.Text = query.ToString();
        }

    }

推荐答案

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace CheckGrid
{
    public partial class Form1 : Form
    {
        object[] frontend = { "Android", "Asp", "Asp.net", "C#.net", "J2EE", "Java", "Matlab", "NS2", "PHP", "VB", "VB.net" };
        String StaticQueryFormat = "Select Proj_id,Proj_name,Front_end,Back_end from Proj_details where Front_end IN ({0})";
        public Form1()
        {
            InitializeComponent();
        }

        protected void button1_Click(object sender, EventArgs e)
        {

            if (CheckBoxList1.CheckedItems.Count > 0)
            {
                StringBuilder sb = new StringBuilder();
                string item = "";
                for (int x = 0; x < CheckBoxList1.CheckedItems.Count; x++)
                {
                    item = CheckBoxList1.CheckedItems[x].ToString();

                    sb.Append("'" + item + "',");
                }
                string st = sb.ToString();
                st = st.LastIndexOf(",") == st.Length - 1 ? st.Substring(0, st.Length - 1) : st;

                string query = string.Format(StaticQueryFormat, st);

                /* continue from here */
                con.Open();
                SqlDataAdapter sqlada = new SqlDataAdapter(query, con);
                DataSet ds = new DataSet();
                sqlada.Fill(ds, "Proj_details");
                gv_search_project.Rows.Clear();
                gv_search_project.DataSource = ds.Tables[0];
                gv_search_project.DataBind();

            }
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            CheckBoxList1.Items.AddRange(frontend);
        }

    }
}


这篇关于在C#中动态地将数据源添加到gridview的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆