📄 defaultcs.aspx.cs
字号:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Data.OleDb;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
namespace Telerik.CallbackExamplesCSharp.Functionality.PreservingControlFocus
{
/// <summary>
/// Summary description for DefaultCS.
/// </summary>
public class DefaultCS : System.Web.UI.Page
{
protected Telerik.WebControls.CallbackTextBox CallbackTextBox1;
protected System.Web.UI.WebControls.Label Label2;
protected System.Web.UI.WebControls.Label Label3;
protected Telerik.WebControls.CallbackCheckBox cbSetFocus;
protected System.Web.UI.WebControls.Image Image1;
protected Telerik.WebControls.LoadingPanel LoadingPanel1;
protected Telerik.WebControls.CallbackDropDownList ddlContinents;
protected Telerik.WebControls.CallbackDropDownList ddlCountries;
protected Telerik.WebControls.CallbackDropDownList ddlCities;
protected System.Web.UI.WebControls.Label lbPath;
protected Telerik.WebControls.CallbackTextBox CallbackTextBox2;
private void Page_Load(object sender, System.EventArgs e)
{
if (!Page.IsPostBack)
{
LoadContinents();
ResetControls();
}
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.ddlCities.SelectedIndexChanged += new System.EventHandler(this.ddlCities_SelectedIndexChanged);
this.ddlCountries.SelectedIndexChanged += new System.EventHandler(this.ddlCountries_SelectedIndexChanged);
this.ddlContinents.SelectedIndexChanged += new System.EventHandler(this.ddlContinents_SelectedIndexChanged);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
private void LoadContinents()
{
string path = Server.MapPath("~/Callback/Data/Countries.mdb");
OleDbConnection dbCon = new OleDbConnection ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + path);
dbCon.Open();
OleDbDataAdapter adapter = new OleDbDataAdapter("SELECT * FROM Continents", dbCon);
DataTable dt = new DataTable();
adapter.Fill(dt);
dbCon.Close();
ddlContinents.DataTextField = "Name";
ddlContinents.DataValueField = "ID";
ddlContinents.DataSource = dt;
ddlContinents.DataBind();
ddlContinents.Items.Insert(0, new ListItem(" - Select a continent - "));
if (ddlContinents.SelectedIndex == -1)
{
ddlContinents.SelectedIndex = 0;
}
}
private void ddlContinents_SelectedIndexChanged(object sender, System.EventArgs e)
{
if (ddlContinents.SelectedIndex > 0)
{
LoadCountries(ddlContinents.SelectedItem.Value);
LoadCities(ddlCountries.SelectedItem.Value);
if (cbSetFocus.Checked)
{
ddlContinents.SetFocus(ddlCountries.ClientID);
}
}
else
{
ddlCountries.Enabled = false;
ddlCities.Enabled = false;
ResetControls();
}
UpdatePath();
}
private void ResetControls()
{
if (ddlCountries.Items.Count == 0)
{
ddlCountries.Items.Insert(0, new ListItem("- Select a country - ", "-1"));
}
ddlCities.SelectedIndex = 0;
if (ddlCities.Items.Count == 0)
{
ddlCities.Items.Insert(0, new ListItem("- Select a city - ", "-1"));
}
ddlCities.SelectedIndex = 0;
}
private void UpdatePath()
{
lbPath.Text = string.Empty;
if (ddlContinents.SelectedIndex > 0)
{
lbPath.Text += ddlContinents.SelectedItem.Text;
if (ddlCountries.SelectedIndex > 0)
{
lbPath.Text += " > " + ddlCountries.SelectedItem.Text;
if (ddlCities.SelectedIndex > 0)
{
lbPath.Text += " > " + ddlCities.SelectedItem.Text;
}
}
}
}
private void LoadCountries(string selectedValue)
{
if (selectedValue != "-1")
{
string path = Server.MapPath("~/Callback/Data/Countries.mdb");
OleDbConnection dbCon = new OleDbConnection ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + path);
dbCon.Open();
OleDbDataAdapter adapter = new OleDbDataAdapter("SELECT * FROM Countries WHERE ContinentID = " + selectedValue, dbCon);
DataTable dt = new DataTable();
adapter.Fill(dt);
dbCon.Close();
ddlCountries.DataTextField = "Name";
ddlCountries.DataValueField = "ID";
ddlCountries.DataSource = dt;
ddlCountries.DataBind();
ddlCountries.Enabled = true;
ddlCountries.Items.Insert(0, new ListItem("- Select a country -", "-1"));
if (ddlCountries.SelectedIndex == -1)
{
ddlCountries.SelectedIndex = 0;
}
}
}
private void LoadCities(string selectedValue)
{
if (selectedValue != "-1")
{
string path = Server.MapPath("~/Callback/Data/Countries.mdb");
OleDbConnection dbCon = new OleDbConnection ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + path);
dbCon.Open();
OleDbDataAdapter adapter = new OleDbDataAdapter("SELECT * FROM Cities WHERE CountryID = " + selectedValue, dbCon);
DataTable dt = new DataTable();
adapter.Fill(dt);
dbCon.Close();
ddlCities.DataTextField = "Name";
ddlCities.DataValueField = "ID";
ddlCities.DataSource = dt;
ddlCities.DataBind();
ddlCities.Items.Insert(0, new ListItem("- Select a city - ", "-1"));
ddlCities.Enabled = true;
if (ddlCities.SelectedIndex == -1)
{
ddlCities.SelectedIndex = 0;
}
}
else
{
if (ddlCities.Items.Count == 0)
{
ddlCities.Items.Insert(0, new ListItem("- Select a city - ", "-1"));
}
ddlCities.SelectedIndex = 0;
ddlCities.Enabled = false;
}
}
private void ddlCountries_SelectedIndexChanged(object sender, System.EventArgs e)
{
if (ddlCountries.SelectedIndex > 0)
{
LoadCities(ddlCountries.SelectedItem.Value);
if (cbSetFocus.Checked)
{
ddlContinents.SetFocus(ddlCities.ClientID);
}
}
UpdatePath();
}
private void ddlCities_SelectedIndexChanged(object sender, System.EventArgs e)
{
UpdatePath();
if (cbSetFocus.Checked)
{
ddlCities.SetFocus(ddlContinents.ClientID);
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -