全国省市选择

省市选择练习题:

界面设计:

当选择省后相应的省里面的市从数据库中读出。

具体实现代码为:

 1 using System;
 2 using System.Collections.Generic;
 3 using System.ComponentModel;
 4 using System.Data;
 5 using System.Drawing;
 6 using System.Linq;
 7 using System.Text;
 8 using System.Windows.Forms;
 9 using System.Data.SqlClient;
10 using System.Data.Sql;
11 using System.Configuration;
12 
13 namespace 省市数据库
14 {
15     public partial class 省市 : Form
16     {
17         public 省市()
18         {
19             InitializeComponent();
20         }
21 
22         private void 省市_Load(object sender, EventArgs e)
23         {
24            // string strconn = @"Data Source=.\SQLEXPRESS;AttachDbFilename=F:\学习\C#\练习C#时的代码\ado.net\省市数据库\SS.mdf;Integrated Security=True;User Instance=True";
25             string strconn = ConfigurationManager.ConnectionStrings["SS"].ConnectionString;//从app.config文件中读取数据库连接字符串
26             using (SqlConnection conn=new SqlConnection (strconn))
27             {
28                 conn.Open();
29                 string selectYuju="select * from promary";
30                 using (SqlCommand cmd = new SqlCommand(selectYuju,conn))
31                 {
32                     SqlDataReader dr = cmd.ExecuteReader();
33                     while (dr.Read())
34                     {
35                        // string PromaryName = dr.GetString(dr.GetOrdinal("proName"));
36                         ProItem item = new ProItem();//创建一个对象,对象中两个字段对应省的名字和省的ID
37                         item.proName = dr.GetString(dr.GetOrdinal("proName"));
38                         item.proID = dr.GetInt32(dr.GetOrdinal ("proID"));
39                         cmd省.Items.Add(item);//将创建的对象添加到comboBox控件中,在这里需要修改一下该comboBox控件的一个属性,将
40                         //属性中的DisplayMemeber设置为proName
41 
42                     }
43                 }
44             }
45         }
46         private void cmd省_SelectedIndexChanged(object sender, EventArgs e)
47         {
48             cmd市.Items.Clear();
49             ProItem selectedItem = (ProItem)cmd省.SelectedItem;
50             int selectedproID=selectedItem.proID;
51            // string strconn = @"Data Source=.\SQLEXPRESS;AttachDbFilename=F:\学习\C#\练习C#时的代码\ado.net\省市数据库\SS.mdf;Integrated Security=True;User Instance=True";
52             string strconn = ConfigurationManager.ConnectionStrings["SS"].ConnectionString;
53             using (SqlConnection conn = new SqlConnection(strconn))
54             {
55                 conn.Open();
56                 string selectYuJu = "select cityName from city where proID=@proid";
57                 using (SqlCommand cmd = new SqlCommand(selectYuJu, conn))
58                 {
59                     cmd.Parameters.Add(new SqlParameter("proid", selectedproID));
60                     SqlDataReader dr=cmd.ExecuteReader ();
61                     while (dr.Read())
62                     {
63                         cmd市.Items.Add(dr.GetString (dr.GetOrdinal ("cityName")));
64                     }
65                 }
66 
67             }
68         }
69 
70         private void cmd市_SelectedIndexChanged(object sender, EventArgs e)
71         {
72             ProItem p1 = (ProItem)cmd省.SelectedItem;
73             string sheng= p1.proName;
74             string shi = (string)cmd市.SelectedItem;
75             MessageBox.Show(sheng +shi );
76         }
77     
78     }
79     public class ProItem
80     {
81         public int proID { get; set; }
82         public string proName { get; set; }
83         
84     }
85 }

配置文件中的代码为:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <connectionStrings >
    <add name="SS" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=F:\学习\C#\练习C#时的代码\ado.net\省市数据库\SS.mdf;Integrated Security=True;User Instance=True"/>
  </connectionStrings>
  
</configuration>

运行结果为:

 

 

posted @ 2013-08-18 13:20  lanacon  Views(327)  Comments(0Edit  收藏  举报