【疯了C#】神奇的换肤(二)
昨天参照了网上的资料练习了换肤,今天进一步的实现选择换肤
其实很简单,需要实现的功能如下点击combobox中的不同项目然后面板会自动的切换到相应的界面主题。
界面如下:
下述代码参照 “张隽永” 博客,http://realzjy.blog.51cto.com/818594/165556
public class ComboBoxItem
{
private string _text = null;
private object _value = null;
public string Text { get { return this._text; } set { this._text = value; } }
public object Value { get { return this._value; } set { this._value = value; } }
public override string ToString()
{
return this._text;
}
}
private void Form1_Load(object sender, EventArgs e)
{
ComboBoxItem bt1 = new ComboBoxItem();
ComboBoxItem bt2 = new ComboBoxItem();
ComboBoxItem bt3 = new ComboBoxItem();
ComboBoxItem bt4 = new ComboBoxItem();
bt1.Text = "皮肤1";
bt1.Value = "皮肤1";
bt2.Text = "皮肤2";
bt2.Value = "皮肤2";
bt3.Text = "皮肤3";
bt3.Value = "皮肤3";
bt4.Text = "皮肤4";
bt4.Value = "皮肤4";
Type.Items.Add(bt1);
Type.Items.Add(bt2);
Type.Items.Add(bt3);
Type.Items.Add(bt4);
}
本段代码是对Combobox进行load时的显示初始化。
点击combobox 切换切换index时的code
private void Type_SelectedIndexChanged(object sender, EventArgs e)
{
string[] A = { "皮肤1", "皮肤2", "皮肤3", "皮肤4" };
Type.Text = A[Type.SelectedIndex];
}
点击确定按钮执行换肤动作的code
private void Confirm_Click(object sender, EventArgs e)
{
switch(Type.Text)
{
case "皮肤1":
this.skinEngine1.SkinFile="DiamondBlue.ssk";
break;
case "皮肤2":
this.skinEngine1.SkinFile="SportsBlue.ssk";
break;
case "皮肤3":
this.skinEngine1.SkinFile="SportsCyan.ssk";
break;
case "皮肤4":
this.skinEngine1.SkinFile="diamondgreen.ssk";
break;
} }
代码写的很垃圾,当然本文的主要目的也仅仅是为了亲手实现这个功能。
切换index
【疯了C#】神奇的换肤(二)的更多相关文章
- 【疯了C#】神奇的换肤(一)
之前看网上有换肤控件IrisSkin2的介绍,感觉很神奇,今天亲自做下试验,C#越来越有趣了,是Labview无法比拟的. 前期准备工作如下:下载后IrisSkin2.dll及匹配的皮肤. 其中ssk ...
- WPF换肤之二:可拉动的窗体
原文:WPF换肤之二:可拉动的窗体 让我们接着上一章: WPF换肤之一:创建圆角窗体 来继续. 在这一章,我主要是实现对圆角窗体的拖动,改变大小功能. 拖动自绘窗体的步骤 首先,通过上节的设计,我们知 ...
- Android实现换肤功能(二)
前两天写的上章关于换肤的功能获得了很好的反响,今天为大家介绍另一种方式.今天实现的策略也是网友建议的,然后我自己去写了个demo,大家自己评估下相比第一种方式的优势和劣势在哪里. 简单介绍下关于第一种 ...
- Android 打造自己的个性化应用(二):应用程序内置资源实现换肤功能
通过应用程序内置资源实现换肤,典型的应用为QQ空间中换肤的实现. 应用场景为: 应用一般不大,且页面较少,风格相对简单,一般只用实现部分资源或者只用实现背景的更换. 此种换肤方式实现的思路: 1. 把 ...
- Android动态换肤(二、apk免安装插件方式)
在上一篇文章Android动态换肤(一.应用内置多套皮肤)中,我们了解到,动态换肤无非就是调用view的setBackgroundResource(R.drawable.id)等方法设置控件的背景或者 ...
- 利用CSS预处理技术实现项目换肤功能(less css + asp.net mvc4.0 bundle)
一.背景 在越来越重视用户体验的今天,换肤功能也慢慢被重视起来.一个web系统用户可以选择一个自己喜欢的系统主题,在用户眼里还是会多少加点分的.我们很开心的是easyui v1.3.4有自带defau ...
- iOS开发--换肤简单实现以及工具类的抽取
一.根据美工提供的图片,可以有两种换肤的方案. <1>美工提供图片的类型一: <2>美工提供图片的类型二:这种分了文件夹文件名都一样的情况,拖入项目后最后用真实文件夹(蓝色文件 ...
- iOS开发——高级篇——换肤、静态库
一.换肤 1.思路1> 解决方案1,使用颜色作为图片素材的命名关键字 问题1:要保证每套图片的文件名 颜色+ 名称.png的格式比较麻烦 问题2:如果要将某一个图片应用到其他皮肤不方便2> ...
- Android中插件开发篇之----应用换肤原理解析
一.前言 今天又到周末了,感觉时间过的很快呀.又要写blog了.那么今天就来看看应用的换肤原理解析.在之前的一篇博客中我说道了Android中的插件开发篇的基础:类加载器的相关知识.没看过的同学可以转 ...
随机推荐
- HTP 302 SEO作弊
w 李智慧
- InnoDB buffer pool 刷新快慢取决因素
innodb buffer pool 刷新快慢取决于两个参数 mysql> show variables like 'innodb_io_capacity%';+---------------- ...
- window7系统下安装scrapy爬虫框架
本文是在python3.6环境下安装的下面软件,如果大家和我的python版本不一致,请在页面选择符合自己版本的软件下载. 1.wheel pip install wheel 2.lxml 下载lxm ...
- JavaScript中的Date,RegExp,Function对象
Date对象 创建Date对象 //方法1:不指定参数var nowd1=new Date();alert(nowd1.toLocaleString( ));//方法2:参数为日期字符串var now ...
- DOM 查找标签
1.直接查找 document.getElementById // 根据ID获取一个标签 document.getElementsByClassName //根据class属性获取 document. ...
- SaltStack任务计划
编辑fansik_cron.sls文件: 内容如下: cron_test: cron.present: - name: /bin/touch /tmp/fansik.txt - user: root ...
- Python基础(16)_面向对象程序设计(类、继承、派生、组合、接口)
一.面向过程程序设计与面向对象程序设计 面向过程的程序设计:核心是过程,过程就解决问题的步骤,基于该思想设计程序就像是在设计一条流水线,是一种机械式的思维方式 优点:复杂的问题的简单化,流程化 缺点: ...
- python中的值传递和引用传递
Python中的变量是没有类型的,我们可以把它看做一个(*void)类型的指针,变量是可以指向任何对象的,而对象才是有类型的. Python中的对象有可变对象(number,string,tuple等 ...
- Ubuntu启动自动登录并启动程序
最近在研究Ubuntu,需要在系统启动之后自动登录,并且启动某个程序. 手上拿到的系统只有一个空桌面,其他嘛也没有,鼠标右键也不管用.于是借助自己的虚拟机研究发现,自动启动程序配置文件在: /home ...
- python:字典的方法
1.查找字典中的key对应的值和key是否存在(get,has_key)dict.get(key, default = None) :返回字典中key对应的值,若key不存在字典中,则返回defaul ...