winform 实现选择的城市名单
首先在地图上
#region 选择城市
/// <summary>
/// 点击字母事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
void item_Click(object sender, EventArgs e)
{
LinkLabel lbl = sender as LinkLabel;
lbl.Font = new Font(new FontFamily("宋体"), 10, FontStyle.Bold);
foreach (Control item in pan_CityTitle.Controls)
{
if (item is LinkLabel && item != lbl)
item.Font = new Font(new FontFamily("宋体"), 10, FontStyle.Regular);
}
flowLayoutPanel.Controls.Clear();
CreatCheckCityControl(lbl.Tag != null ? lbl.Tag.ToString() : string.Empty);
} /// <summary>
/// 绘制城市控件
/// </summary>
private void CreatCheckCityControl(string lettey)
{
if (lettey == string.Empty)
{
List<FlyCity> list = dicList["RM"];
CreatControl(list);
}
else
{
for (int i = 0; i < lettey.Length; i++)
{
string temp = lettey.Substring(i, 1);
if (!dicList.Keys.Contains(temp))
{
continue;
}
List<FlyCity> list = dicList[temp];
CreatControl(list);
}
}
}
private void CreatControl(List<FlyCity> list)
{
foreach (FlyCity fly in list)
{
Button button = new Button()
{
Text = fly.CityName,
Tag = fly,
Width = 76,
Height = 25,
ForeColor = Color.FromArgb(89, 89, 89),
FlatStyle = FlatStyle.Flat,
};
button.FlatAppearance.BorderColor = Color.White;
button.Click += new EventHandler(button_Click);
button.MouseHover += new EventHandler(button_MouseHover);
button.MouseLeave += new EventHandler(button_MouseLeave);
flowLayoutPanel.Controls.Add(button);
}
}
/// <summary>
/// 隐藏控件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
void FlyReserveForm_MouseUp(object sender, MouseEventArgs e)
{
if (!pan_City.Capture)
{
this.pan_City.Visible = false;
}
if (!calendar.Capture)
{
this.calendar.Hide();
}
}
/// <summary>
/// 点击选择目的地
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
void btnToCity_Click(object sender, EventArgs e)
{
sType = 1;
pan_City.Visible = true;
pan_City.Location = new Point(446, 100);
}
/// <summary>
/// 点击选择出发城市
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
void btnFromCity_Click(object sender, EventArgs e)
{
sType = 0;
pan_City.Visible = true;
pan_City.Location = new Point(133, 100);
}
/// <summary>
/// 从xml获取城市列表
/// </summary>
private void LoadCityArray()
{
List<FlyCity> list = new List<FlyCity>();
XmlHelper help = new XmlHelper(Environment.CurrentDirectory + "\\arrays.xml");
DataSet ds = help.GetData("resources");
foreach (DataRow item in ds.Tables[0].Rows)
{
FlyCity fly = new FlyCity();
string city = item[0].ToString().Substring(0, item[0].ToString().IndexOf(","));
string cityCode = item[0].ToString().Substring(item[0].ToString().IndexOf(",") + 1, item[0].ToString().Length - item[0].ToString().IndexOf(",") -1);
fly.CityName = city;
fly.CityCode = cityCode;
list.Add(fly);
}
dicList = ChineseConvert.InsertDic(list);
} void button_Click(object sender, EventArgs e)
{
if ((sender as Button).Tag == null)
return;
FlyCity fly = (sender as Button).Tag as FlyCity;
if (sType == 0)
{
lblFromCity.Text = fly.CityName;
lblFromCity.Tag = fly;
}
else
{
lblToCity.Text = fly.CityName;
lblToCity.Tag = fly;
}
pan_City.Visible = false;
} private void Pan_TitleClick()
{
foreach (Control item in pan_CityTitle.Controls)
{
if(item is LinkLabel)
item.Click += new EventHandler(item_Click);
}
} void button_MouseLeave(object sender, EventArgs e)
{
(sender as Button).BackColor = Color.White;
(sender as Button).ForeColor = Color.FromArgb(89, 89, 89);
} void button_MouseHover(object sender, EventArgs e)
{
(sender as Button).BackColor = Color.FromArgb(41, 100, 180);
(sender as Button).ForeColor = Color.White;
}
#endregion
版权声明:本文博主原创文章。博客,未经同意不得转载。
winform 实现选择的城市名单的更多相关文章
- (转)在WinForm中选择本地文件
相信很多朋友在日常的编程中总会遇到各钟各样的问题,关于在WinForm中选择本地文件就是很多朋友们都认为很难的一个学习.net的难点, 在WebForm中提供了FileUpload控件来供我们选择本地 ...
- 【.Net】在WinForm中选择本地文件
相信很多朋友在日常的编程中总会遇到各钟各样的问题,关于在WinForm中选择本地文件就是很多朋友们都认为很难的一个学习.net的难点, 在WebForm中提供了FileUpload控件来供我们选择本地 ...
- winform中选择文件获取路径
private void button1_Click(object sender, EventArgs e) { //此时弹出一个可以选择文件的窗体 OpenFileDialog fileDialog ...
- WPF与Winform的选择
最近公司计划对ERP系统全面升级,现有的ERP是简单的bs架构系统打算改版成cs.平时如自己写一些工具,小应用都是用winform就足够.但是界面总是很难看,据了解WPF在这一方面会强一些.因为之前对 ...
- winform 实现选择文件和选择文件夹对话框
//选择文件,点击[浏览],选择文件 private void button1_Click(object sender, EventArgs e) { OpenFileDialog openFileD ...
- C# winform中 选择文件和保存文件
转载自https://blog.csdn.net/qq_31788297/article/details/62047952 我们在使用桌面软件的时候经常会使用到选择文件并打开和另存为等的窗口,这样方便 ...
- C# WinForm TreeView选择父节点子节点全选
//设置标志,防止死循环 bool check = false; public void TV_AfterCheck(object sender, TreeViewEventArgs e) { if ...
- 【代码笔记】iOS-先选择城市,然后,跳转Tabbar
一,效果图. 二,工程图. 三,代码. ChooseCityViewController.h #import <UIKit/UIKit.h> @interface ChooseCityVi ...
- 仿51job.com城市选择框特效
650) this.width=650;" border="0" alt="" src="http://img1.51cto.com/att ...
随机推荐
- Hibernate HQL详细说明
1. Hibernate HQL详细说明 1.1. hql一个简短的引论 Hibernate它配备了一种非常强大的查询语言.这种语言看起来非常像SQL.但是不要 要对相位的语法结构似,HQL是很有 ...
- Android-管理Activity生命周期 -开始一个Activity
很多程序都是从main()方法开始启动的,和其他程序不同,android是在activity生命周期的特定状态的特定回调方法中初始化代码的.activity启动和销毁的时候都用很多回调方法. 这里将要 ...
- VS2015 C#6.0
VS2015 C#6.0 中的那些新特性 VS2015在自己机器上确实是装好了,(全部安装的话,在Java SE 开发工具包 会卡顿很长时间,我直接关闭,然后重启电脑,重新修复安装搞定), 想来体验一 ...
- 完美世界3D格斗手游[格斗宝贝]今日公測
狗刨学习网报道 / 经过近两年井喷式的发展,国内手游市场洗牌的信号愈加强烈.用户体验的提升.以及对产品核心品质的要求.促进了手游的精品化.而白热化的市场竞争,也催生了各大厂商在细分市场的抢滩.当中.更 ...
- LINQ之路(1):LINQ基础
本文将从什么是LINQ(What).为什么使用LINQ(Why)以及如何使用LINQ(How)三个方面来进行说明. 1.什么是LINQ LINQ(Language Integrated Query)是 ...
- 设计模式之前奏(UML类图)
原文:设计模式之前奏(UML类图) 本人菜菜一个,最近一直在博客园游走闲逛,看到了各种技术,各种各种…….便看到了大话设计模式这本书,下了电子版的看了看第一章,感觉相当不错,不仅通俗易懂,而且与实际案 ...
- HDU 4917 Permutation
意甲冠军: 序列p1.p2.p3--pn由1.2.3--n这些数字 现在给出一些条件pi<pj 部条件的排列的个数 思路: 非常easy想到用一条有向的线连接全部的pi和pj 那么就构成了 ...
- ROADS+dijkstra的灵活运用+POJ
ROADS Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 10742 Accepted: 3949 Descriptio ...
- HDU 5059 Help him(细节)
HDU 5059 Help him 题目链接 直接用字符串去比較就可以,先推断原数字正确不对,然后写一个推断函数,注意细节,然后注意判掉空串情况 代码: #include <cstdio> ...
- Objective-c正确的写法单身
Singleton模式iOS发展可能是其中最常用的模式中使用的.但是因为oc语言特性本身,想要写一个正确的Singleton模式是比较繁琐,iOS中单例模式的设计思路. 关于单例模式很多其它的介绍请參 ...