>> ***VFP Code >> mygrid.COLUMN1.CONTROLSOURCE = "orderno" >> mygrid.COLUMN2.CONTROLSOURCE = "partno" >> mygrid.COLUMN3.CONTROLSOURCE = "desc" >>>>
>private SqlDataSource sds; > >private void QueryData(string sql) >{ > ConnectionStringSettingsCollection csc = ConfigurationManager.ConnectionStrings; > ConnectionStringSettings cs = csc["NorthwindConnectionString"]; > sds = new SqlDataSource(cs.ConnectionString, sql); >} > >protected void btnShowCompany_Click(object sender, EventArgs e) >{ > QueryData("select customerID,CompanyName from customers"); > myGridView.DataSource = sds; > myGridView.AutoGenerateColumns = false; > myGridView.Columns.Clear(); > AddField(myGridView,"customerID","customer\'s ID"); > AddField(myGridView, "companyName", "Company Name"); > myGridView.DataBind(); >} >protected void btnShowContact_Click(object sender, EventArgs e) >{ > QueryData("select customerID,ContactName,ContactTitle from customers"); > myGridView.DataSource = sds; > myGridView.AutoGenerateColumns = false; > myGridView.Columns.Clear(); > AddField(myGridView,"customerID","customer\'s ID"); > AddField(myGridView, "contactName", "Contact Name"); > AddField(myGridView, "contactTitle", "Contact Title"); > myGridView.DataBind(); >} > >private void AddField(GridView gv, string dataField, string caption) >{ > BoundField bf = new BoundField(); > bf.DataField = dataField; > bf.HeaderText = caption; > gv.Columns.Add(bf); >} >PS: This is a 'quick' sample code. Probably you'd use select * version and use cached data instead.