Try this :)
using System;
using System.Data;
public partial class _Default : System.Web.UI.Page
{
DataSet ds = new DataSet();
protected void Page_Load(object sender, EventArgs e)
{
if (Cache["Motos"] == null)
{
ds.ReadXml(Server.MapPath("~/XMLFiles/Motors.xml"), XmlReadMode.InferSchema);
Cache.Insert("Motos", ds);
}
else
ds = (DataSet)Cache["Motos"];
}
protected void drpMain_SelectedIndexChanged(object sender, EventArgs e)
{
System.Threading.Thread.Sleep(1200);
if (drpMain.SelectedValue == "0")
{
drpMoto.Items.Clear();
drpBrand.Items.Clear();
drpMoto.Enabled = false;
drpBrand.Enabled = false;
btnGo.Enabled = false;
}
else if (drpMain.SelectedValue == "1")
{
drpMoto.DataTextField = "mcname";
drpMoto.DataValueField = "mcid";
drpMoto.DataSource = ds.Tables["motoc"];
drpMoto.DataBind();
drpMoto.Enabled = true;
drpBrand.Items.Clear();
drpBrand.Enabled = false;
btnGo.Enabled = false;
}
else if (drpMain.SelectedValue == "2")
{
drpMoto.DataTextField = "mbname";
drpMoto.DataValueField = "mbid";
drpMoto.DataSource = ds.Tables["motob"];
drpMoto.DataBind();
drpMoto.Enabled = true;
drpBrand.Items.Clear();
drpBrand.Enabled = false;
btnGo.Enabled = false;
}
}
protected void drpMoto_SelectedIndexChanged(object sender, EventArgs e)
{
System.Threading.Thread.Sleep(1200);
if (drpMoto.SelectedItem.Value == "0")
{
drpBrand.Items.Clear();
drpBrand.Enabled = false;
btnGo.Enabled = false;
}
else if (drpMain.SelectedValue == "1" && drpMoto.SelectedItem.Value != "0")
{
DataView dView = new DataView(ds.Tables["motocb"]);
dView.RowFilter = "mcid='" + drpMoto.SelectedValue.Trim() + "'";
dView.Sort = "mcbname asc";
drpBrand.DataTextField = "mcbname";
drpBrand.DataValueField = "mcbid";
drpBrand.DataSource = dView;
drpBrand.DataBind();
drpBrand.Enabled = true;
btnGo.Enabled = true;
}
else if (drpMain.SelectedValue == "2" && drpMoto.SelectedItem.Value != "0")
{
DataView dView = new DataView(ds.Tables["motobb"]);
dView.RowFilter = "mbid='" + drpMoto.SelectedValue.Trim() + "'";
dView.Sort = "mbbname asc";
drpBrand.DataTextField = "mbbname";
drpBrand.DataValueField = "mbbid";
drpBrand.DataSource = dView;
drpBrand.DataBind();
drpBrand.Enabled = true;
btnGo.Enabled = true;
}
}
protected void btnGo_OnClick(object sender, EventArgs e)
{
lblResult.Text = "Searched for: " + drpBrand.SelectedItem.Text.Replace("(","").Replace(")","") + " " + drpMoto.SelectedItem.Text + " " + drpMain.SelectedItem.Text.Replace("s","") + "(s)";
}
}