上一页 1 ··· 13 14 15 16 17 18 19 20 21 ··· 34 下一页
摘要: 注:此乃“流水帐”式的水文,营养成分较低,高手请自动无视以下内容,否则引起消化不良等症状等,一概不管 ^_^c#自从3.0开始,提供了很多便捷的语法特性(俗称“语法糖”),以简化程序员的工作量,同时也让编程变得更有乐趣,但是凡事有利必有弊。比如我们有一个类,希望能序列化成字符串后,以string方式在Silverlight与WCF(或其它后台编程技术)之间传输。using System.IO;using System.Text;using System.Xml.Serialization;namespace XmlClassSerelizer{ public class Person ... 阅读全文
posted @ 2011-06-25 22:17 菩提树下的杨过 阅读(1102) 评论(0) 推荐(0) 编辑
摘要: 对象拖动是一个老生常谈的话题,在SL上要实现对象拖动,一般有三种思路:一、基于Canvas绝对定位布局的拖动这种处理方法最简单,修改对象的Canvas.Top与Canvas.Left即可,简单明了!在线案例: silverlight图片局部放大效果但是很多时候,我们采用的布局并不是Canvas,如果仅仅为了实现对象拖动,把整个布局重构,代价太大,有点得不偿失。二、基于对象Margin值的拖动Margin是对象的通用属性,通过改变Margin值理论上可在任何布局下,重新定位对象的位置。在线案例: silverlight:类似iBaidu,iGoogle的拖放功能缺点就是算法处理有些小复杂,初次看 阅读全文
posted @ 2011-06-22 21:04 菩提树下的杨过 阅读(3768) 评论(3) 推荐(3) 编辑
摘要: 某些场景下,想将一个对象快速隐藏、恢复,而且不影响布局。有一种方法:将对象的透明度在1与0之间切换。问:为什么不用Visibility? 答:这通常会导致重新布局,即剩余可显示的控件可能会产生移动。在一些特定场景,比如报表套打中,明显不适用。但是切换透明度的方法,有时候也不太好用,比如一个Border里再套其它控件,如果只是想快速去掉Border的边框显示,而保留Border中的控件继续呈现,就不适用了。(因为Border的透明度为0后,也会同步隐藏Border内部的控件)。解决方法就是:修改Border边框颜色值中的A分量,让其在0与255之间切换。 private void btnTest 阅读全文
posted @ 2011-06-21 15:25 菩提树下的杨过 阅读(730) 评论(1) 推荐(0) 编辑
摘要: 做企业级应用,跟office打交道是少不了的。这里的Office不仅仅局限于微软的Office,还有第三方的Open Office之类。.Net传统的Office操作方法(比如OleDB,OWC之类),有几大缺点:一是不通用(仅能处理微软的Office,不能与其它非Windows平台交换数据),二是性能差(导出一个Excel,如果记录数上万条,速度很慢),三是服务器通常要安装Office Web Components(即OWC组件)。自从Open XML出现后,这种情况在很大程度上得到了改观,Open XML已经逐渐成为一种办公文档的通用国际标准了(该标准基于XML格式),详情见百度百科 ht 阅读全文
posted @ 2011-06-18 21:23 菩提树下的杨过 阅读(6148) 评论(3) 推荐(2) 编辑
摘要: 如果SL是以浏览器模式运行的,要想找到满意的快捷键,通常会让人郁闷,因为浏览器会优先拦截掉大部分默认的快捷键,如果您还安装了某些IE插件,它们的优先级也比SL高,此外,如果还开着QQ等东东,QQ又会占用一些快捷键,这样剩下可用的快捷键就不多了。测试代码如下:void MainPage_KeyDown(object sender,KeyEventArgs e){ e.Handled = true; ModifierKeys keys = Keyboard.Modifiers; bool b1 = false; if ((e.Key >= Key.A && e.Key < 阅读全文
posted @ 2011-06-17 13:55 菩提树下的杨过 阅读(1523) 评论(2) 推荐(0) 编辑
摘要: web前端的自动化测试,一般要能实现模拟鼠标点击、键盘录入、浏览器页面自动导航等功能,而且关键的是要对整个测试过程能自动录制并回放。vs2010的SP2已经集成了内置功能,但是目前尚未正式发布,所以本文就不介绍了。有兴趣的同学可参考以下文章:http://msdn.microsoft.com/zh-cn/library/gg413374http://www.cnblogs.com/scottxu/archive/2011/02/28/1967112.html除了微软自家即将推出的vs2010 sp2之外,不少第三方厂家也推出了相应的解决方案,比如Ranorex(园子里有兄弟写过入门文章:htt 阅读全文
posted @ 2011-06-14 08:56 菩提树下的杨过 阅读(4174) 评论(14) 推荐(2) 编辑
摘要: 默认情况下,vs2010并不能创建"Silverlight的单元测试"项目,不是vs2010做不到,只是MS没有推出模板而已。没关系,在联机模板里下载一个,如下图:安装完成以后,就能创建SL单元测试项目了,如下图小试一把:先创建一个SL类库项目,名为SLTools,里面写几行测试代码:namespace SLTools{ public static class MathHelper { public static int Add(int a, int b) { return a + b; } }}然后再创建一个SL单元测试项目,名为SLUnitTest,创建一个测试类,代码 阅读全文
posted @ 2011-06-13 13:49 菩提树下的杨过 阅读(1028) 评论(1) 推荐(0) 编辑
摘要: 做过WinForm数据库开发的人,一定有类似经历:DataGrid绑定后,如果允许行编辑,数据一顿修改后,想批量保存修改后的结果,通常是将DataGrid的所有行遍历,用FindControl找出其中的TextBox之类的控件,取值,然后处理,如果行模板中的控件变化了,可能之前的处理代码又要修改....Net发展到WPF/SL时代,有了双向绑定,这种痛苦经历已经一去不返了,我们只需要关注数据即可,GridView与数据源之间会相互通知各自的变化情况,批量保存时,不管GridView中的数据用户如何修改,也不用去理会行模板中的控件名是啥,直接对数据源进行处理即可。Xaml示例:<UserC 阅读全文
posted @ 2011-06-13 11:29 菩提树下的杨过 阅读(5197) 评论(13) 推荐(1) 编辑
摘要: telerik的RadControls for Silverlight内置了以下几种主题样式:Office Black - 这是默认值,无需加载其它任何dll文件. Office Blue -需要引用 Telerik.Windows.Themes.Office_Blue.dll. Office Silver -需要引用 Telerik.Windows.Themes.Office_Silver.dll. Summer -需要引用 Telerik.Windows.Themes.Summer.dll. Vista -需要引用 Telerik.Windows.Themes.Vista.dll. Win 阅读全文
posted @ 2011-06-06 14:09 菩提树下的杨过 阅读(4456) 评论(2) 推荐(1) 编辑
摘要: 在Silverlight项目中,如果您想最大程度的减少xap包的大小,仅使用默认System.Xml命名空间下提供的功能来实现“XML序列化/反序列化”,恐怕XmlReader/XmlWriter将成为唯一选择了,下面是示例代码:using System.IO;using System.Text;using System.Xml;namespace slLib{ public class Person { private string _name = ""; /// <summary> /// 姓名 /// </summary> public str 阅读全文
posted @ 2011-05-31 23:15 菩提树下的杨过 阅读(1476) 评论(0) 推荐(0) 编辑
摘要: 前言:此乃水文,高手绕道.只要是稍微象样点的项目,一般都会先弄一个PageBase或UserControlBase做基类,然后其它页面/用户控件继承自它,标准的写法如下:先定义基类: PageBase.csusing System.Windows.Controls;namespace sl_test{ public class PageBase:UserControl { }}然后创建一个用户控件Page1继承自它:后端cs部分:namespace sl_test{ public partial class Page1 : PageBase { public Page1() { Initial 阅读全文
posted @ 2011-05-27 20:38 菩提树下的杨过 阅读(1788) 评论(1) 推荐(0) 编辑
摘要: 相信有不少人遇到过这个恶心的问题,xaml与cs编译正常,也能在浏览器里运行,但是就是无法在vs.net或blend里以【设计视图】方式打开,只能对着代码视图盲打。(个人觉得这是blend与vs.net的一个严重bug)出现这个问题的原因,多半是在构架函数里用到了HtmlPage,运行时SL是host在浏览器里的,HtmlPage即为将它嵌入的页面,而在vs或blend里预览时,宿主是IDE开发环境,并不是网页,因此找不到HtmlPage最终报错(这只是个人分析的,不保证正确.)解决办法,在构造函数最开始,用代码判断当前是否为设计视图,如果是,则不执行后面的代码: 阅读全文
posted @ 2011-05-25 16:13 菩提树下的杨过 阅读(1847) 评论(0) 推荐(0) 编辑
摘要: 默认情况下,如果SL项目引用了一些其它程序集(即通俗意义上的dll文件),在编译打包时,这些dll会全部打包到一个xap文件里,随着引用的dll文件越来越多,xap文件会越来越大。这还不是最严重的问题,如果确实需要使用这些dll,大就大吧,要用它容量肯定就会增加。但是如果多个SL项目都要引用相同的程序集时,这些dll会重复打包进每个xap文件,用户在加载多个xap时,实际上是重复下载了这部分dll文件,带宽使用率太低。为了改善这种情况,SL引用了"应用程序库缓存"的概念,在vs2010的SL项目中,打开SL项目的属性页,会看到一个选项:“通过使用应用程序库缓存减少XAP大小 阅读全文
posted @ 2011-05-24 10:45 菩提树下的杨过 阅读(2474) 评论(7) 推荐(0) 编辑
摘要: 直接上图:Xaml部分代码:<UserControl xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation" x:Class="Telerik.Sample.AutoComplete" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns 阅读全文
posted @ 2011-05-23 11:22 菩提树下的杨过 阅读(4911) 评论(2) 推荐(2) 编辑
摘要: 相信很多人都听说过这句名言:garbage in ,garbage out ! 数据录入不规范(或错误)就象一颗定时炸弹,迟早会给系统带来麻烦,所以在数据录入时做好验证是很有必要的。相对传统asp.net开发而言,SL4中的数据验证要轻松很多(主要得益于Xaml的Binding特性),步骤如下:1、定义业务Model类时,在需要验证的属性setter中,写好业务逻辑,对于不合规范的value,要抛出异常!同时切记Model类要实现INotifyPropertyChanged接口,同时每个setter方法的最后,要显示调用OnPropertyChanged方法比如,我们要做一个会员注册填写资料的 阅读全文
posted @ 2011-05-21 22:55 菩提树下的杨过 阅读(3573) 评论(2) 推荐(2) 编辑
摘要: 如果展示类似这种比较cool的图片轮换效果,用RadTransitionControl控件就对了,它提供的过渡效果非常cool!原理并不复杂,可参见以前写的Silverlight之ListBox/Style学习笔记--ListBox版的图片轮换广告.xaml部分:<UserControl xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation" x:Class="Telerik.Sample.Transition" xmlns="http://schemas.mic 阅读全文
posted @ 2011-05-20 13:41 菩提树下的杨过 阅读(2275) 评论(3) 推荐(0) 编辑
摘要: 几乎所有的业务系统都有弹出窗口,典型场景有二种 :1、简单的弹出一个对话框显示信息,比如下面这样:这个很简单,代码示例如下:DialogParameters pars = new DialogParameters(); pars.Header = "信息";pars.Content = "Hello World";RadWindow.Alert(pars);2、点击某条记录的“编辑”按钮,传入ID参数,弹出一个窗口,编辑保存后,将操作结果返回给父窗口这种场景下,要求:a)弹出窗口能接受到父窗口传过来的参数b)弹出窗口关闭时,父窗口要能区分出是通过什么操作 阅读全文
posted @ 2011-05-19 16:46 菩提树下的杨过 阅读(5479) 评论(1) 推荐(0) 编辑
摘要: 实际开发中控件的数据源肯定是动态绑定的,不可能在xaml里写死item项。既然要绑定,就先来几个实体类:上面是类图,各类的代码如下:BusinessBaseObjectusing System.ComponentModel;namespace BusinessObject{ public class BusinessBaseObject : INotifyPropertyChanged { public event PropertyChangedEventHandler PropertyChanged; /// <summary> /// 属性改变时触发事件 /// </su 阅读全文
posted @ 2011-05-19 13:28 菩提树下的杨过 阅读(7657) 评论(18) 推荐(5) 编辑
摘要: 在web开发中,带checkbox的tree是一个很有用的东东,比如权限选择、分类管理,如果不用sl,单纯用js+css实现是很复杂的,有了SL之后,就变得很轻松了解决方案一:利用Silvelright ToolKit(微软的开源项目),项目地址http://silverlight.codeplex.com/在线演示地址:http://silverlight.net/content/samples/sl4/toolkitcontrolsamples/run/default.html解决方案二:telerik公司的Rad for Silverlight商业控件(收费控件)在线演示地址 http: 阅读全文
posted @ 2011-05-17 23:09 菩提树下的杨过 阅读(5980) 评论(9) 推荐(1) 编辑
摘要: 这两天安装了几个第三方的Silverlight控件库后,突然发现vs2010的msdn帮助全没了,打开帮助设置,提示:"为帮助内容存储区指定的位置无效或者您无权访问该位置",要了亲命了,以前可是花了无数时间在线更新到最新状态滴!百度了一下,找到了解决办法:打开注册表,定位到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Help,删除help下的子项。重启vs,打开帮助设置,重新指定本地msdn帮助的目录为“以前安装的msdn帮助目录" 阅读全文
posted @ 2011-05-17 21:16 菩提树下的杨过 阅读(2320) 评论(3) 推荐(0) 编辑
摘要: 前言:本文旨在帮助从未接触过wcf(.svc文件)的webservice开发人员,快速将传统的webService/asmx技术迁移到wcf。高手就不用浪费时间往下看了:)以下所有操作均为vs2010 sp1环境一、服务物理文件创建方式的变化1.1 asmx的创建方式新建项-->Web服务1.2 wcf的创建方式新建项-->Wcf服务二、方法定义上的区别2.1asmx中的方法定义2.2 wcf 中的方法定义这里先啰嗦一下,默认情况下创建一个wcf服务(比如HelloWorld2.svc文件)后,vs.net会自动创建一个IHelloWorld2.cs的接口,然后HelloWorld 阅读全文
posted @ 2011-05-12 10:47 菩提树下的杨过 阅读(5447) 评论(6) 推荐(0) 编辑
摘要: 昨天在做项目时,发现了WebService又一个不人性化的地方,记录于此,希望能帮到遇到类似问题的同学们。很多大型b/s项目,通常会分成几层,为了重现问题,这里我简化为三层:(以下代码仅出于演示,也许并无太大的实际用途)1、Model层放置一些业务需要的实体类(通常这些类要求是可序列化的,以方便后面提到的“服务层"中能被序列化后传递),这里为了演示,弄了三个类:1.1 Person类using System;namespace Model{ [Serializable] public class Person { public Person() { } private int _Sa 阅读全文
posted @ 2011-05-12 09:10 菩提树下的杨过 阅读(2095) 评论(0) 推荐(1) 编辑
摘要: 很多时候,美工会觉得默认的select下拉框很难看(特别是右侧的下拉箭头按钮),他们通常喜欢用一个自定义的图标来代替这个按钮。这样就只能用 js + div 来模拟了,倒腾了一番,用jQuery模拟了下,当然网上这种文章也不少,只是懒得去看找,又重新发明轮子鸟:)<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns=" 阅读全文
posted @ 2011-05-05 13:54 菩提树下的杨过 阅读(6277) 评论(0) 推荐(0) 编辑
摘要: 开始接触biztalk了,这个东西感觉不象linq,silverlight等具体的技术好学,看了几天文档,也跑通了一些小示例,但是仍然觉得毫无感觉,只大概的知道biztalk是一个消息引擎,借助消息的发送/接收,能将各类业务系统连在一起。地球人有一系列biztalk的文章,今天按他的第一个示例hello world,以不编码的方式跑通了,虽然这是一个跟业务流程豪无关联的demo,但仔细倒腾一番,还是蛮有意思的,几点体会:1、如果将文件放入D:\Projects\Hello World\In目录后,biztalk没有自动取走,请检查“发送端口”、“接收端口”是否处于"已启动" 阅读全文
posted @ 2011-05-03 16:48 菩提树下的杨过 阅读(621) 评论(0) 推荐(0) 编辑
摘要: javascript的跨域get很容易搞 定,但是跨域post就有点复杂了,今天无意看到大牛“张宴”的文章:http://blog.s135.com/ajaxcdr/,思路很不错,转载于此(其实这个思路要是看懂了,也很容易借助silverlight实现)最近的一个项目中,需要通过 JavaScript 提交表单数据到另一个域名下的PHP接口(因为数据较大,需要HTTP POST方式提交),并获取PHP接口的返回值,在页面无刷新、无跳转的情况下,更新div标签内的内容。 浏览器出于安全考虑,是不允许JavaScript代码进行跨域操作。JavaScript 和 AJAX 跨域访问分为两大类,一是 阅读全文
posted @ 2011-04-26 20:30 菩提树下的杨过 阅读(5949) 评论(8) 推荐(1) 编辑
摘要: 自从ms推出wcf以后,几乎没在web项目中用过webservice了,基本上都是以wcf host在iis中替代的。今天利用公司以前的web框架做一个新项目,里面大量使用了asmx,在开发过程中遇到了二个很少见的问题,记录如此,可能会帮助到遇到类似问题的同学们:一、在WebService中避免用DataTable做为参数类型,强烈推荐用DataSet来替换DataTable,否则会死得很惨场景如下:一个解决方案分三层:一层是Model,一层是WebService,一层是WebSiteWebService层中提供基本的查询方法,但是调用方法时,必须提供登录后的验证票据信息.Model层中定义了 阅读全文
posted @ 2011-04-23 22:13 菩提树下的杨过 阅读(2849) 评论(7) 推荐(0) 编辑
摘要: 先看效果:(这个只是原型,简陋了点)功能:双击图片或拖动右侧的滑块可实现图片的放大,鼠标按下不放可平移图片。应用场景:目前各地铁、医院、大型商场、机场均有单点触摸查询屏,用这个功能可以实现用户的简单自助地图导航。技术含量:这个,真木有!唯一要注意的是,flash中任何物体的"基准注册点"均为左上角的顶点,且没办法修改(注:所谓基准点是指不论是缩放,还是旋转,都是以这个点为参考原点。)这个很不爽,直接影响放大效果,那么本示例中的“以中心为基点放大”是如何实现的呢?请参看Flash/Flex学习笔记(51):3维旋转与透视变换(PerspectiveProjection)一文中 阅读全文
posted @ 2011-04-23 20:30 菩提树下的杨过 阅读(7302) 评论(2) 推荐(0) 编辑
摘要: 一天之内遇到了二个奇怪的问题,人品值最近有所下降啊。1、动软.Net代码生成器(就是园子里李天平的大作) 在win2008 r2下无法连接oracle数据库,而pl/sql developer、vs.net 2010等其它工具均能正常连接oracle db。解决办法:安装oracle x64的client,并正确配置ora文件即可。个人分析:pl/sql developer采用的是x86的32位client连接,vs.net2010估计也能以32位兼容方式连接oracle,但是生成器用的是x64位的client,所以导致无法对号入座。2、vs.net2008 模板丢失,新建项时,对话框窗口一片 阅读全文
posted @ 2011-04-21 21:51 菩提树下的杨过 阅读(2881) 评论(4) 推荐(0) 编辑
摘要: 如果你的机器上安装了odp.net,且确信machine.config也有类似以下结节:(64位+.net 4.0环境下,machine.config可能会有4份,分别对应于.net2.0/4.0的32/64位版本,要每个都检查过去哦) <DbProviderFactories> <add name="Oracle Data Provider for .NET" invariant="Oracle.DataAccess.Client" description="Oracle Data Provider for .NET&quo 阅读全文
posted @ 2011-04-19 13:32 菩提树下的杨过 阅读(31550) 评论(7) 推荐(5) 编辑
摘要: 园子里有一篇 Log4Net使用指南写得很详细,推荐给准备使用log4net的同学看看。如果你不想花太多时间研究,也可以按下面的步骤在5分钟内搞定:1、添加对log4net.dll的引用2、修改配置文件,以app.config为例,参考内容如下:<?xml version="1.0" encoding="utf-8" ?><configuration> <configSections> <section name="log4net" type="log4net.Config.Log4 阅读全文
posted @ 2011-04-17 20:41 菩提树下的杨过 阅读(1761) 评论(1) 推荐(2) 编辑
摘要: 虽然oracle,sqlserver都是关系型数据库,sql语句大部分也差不多,但是从sqlserver换到oracle还是有很多不适应的地方,本文旨在帮助广大初次接触oracle的.net程序员快速上手。一、安装oracle 11g 服务端(可选)1.1 为什么要安装服务端?理论上讲,本机只需要安装oracle客户端即可,但是很多时候本机有一个服务端学习起来会更方便。比如:数据库的导入/导出,数据库的创建等,均需要服务端。注:oracle的server真的很占内存,如果您的爱姬内存在2G以下,建议直接跳过本步骤吧.1.2 服务端的安装文件下载地址http://www.oracle.com/t 阅读全文
posted @ 2011-04-17 10:55 菩提树下的杨过 阅读(9736) 评论(6) 推荐(10) 编辑
摘要: 默认情况下,windows phone7开发工具只能在windows7上安装,我的本本上好不容易把win2008 r2以及相关软件安装好,总不能因为这个又把win7装回去吧,百度了一下,还真有人研究这个,把解决方法贴在这里备份:1、下载wp7开发工具安装文件,下载地址:http://www.microsoft.com/downloads/en/details.aspx?FamilyID=04704acf-a63a-4f97-952c-8b51b34b00ce&displaylang=en2、将下载到的文件(vm_web.exe)解压。方法:在命令行模式下,输入vm_web.exe /x 阅读全文
posted @ 2011-04-15 22:03 菩提树下的杨过 阅读(1336) 评论(3) 推荐(1) 编辑
摘要: 曾经以为TFS是微软产品中比较难安装的产品了,当我接触biztalk之后,我承认:我错了!安装准备:一、网络环境要能联网,且速度不能太慢(安装过程中会根据本机情况联机下载一些必备组件)二、硬件环境至少双核CPU,C盘空间搞大点(建议不低于60G,我是预留了80G),内存4G以上(最低不少于2G,不然安装的时候等得不耐烦想撞墙时,别说我没提醒你)三、软件环境1、安装windows 2008 R2(最好准备一个干净的系统)2、安装IIS (注:iis安装完以后的默认站点,千万别删除,配置BAM时会用到!如果您已经删除了,最好把IIS和谐了,重装!)3、安装SqlServer 2008 + SP1或 阅读全文
posted @ 2011-04-13 13:52 菩提树下的杨过 阅读(934) 评论(10) 推荐(0) 编辑
摘要: 关于flex中动态加载Module的文章,网上有很多,但多半是基于flex3的,如果在flash builder/flex4中按他们所提供的方法去做,最后将module加载到容器中时,会报:null object reference错误。经过多番摸索,发现只能在ready回调中,以Object这种基本类型使用,不能强制做任何类型转型,方能正常加载到容器,并与加载后的实例交互(虽然这样flash builder的IDE环境中,无法智能代码提示),原因不明!开始吧,先创建一个mxml Module,命名为:MyModule.mxml<?xml version="1.0" 阅读全文
posted @ 2011-04-10 20:12 菩提树下的杨过 阅读(6040) 评论(4) 推荐(1) 编辑
摘要: 虽然flex跟.net交互的首选是FluorineFx,但是如果在某些特定情况下(比如服务端是现成的,不允许修改,或者服务端开发方不懂FluorineFx为何物),这时webService还是挺有用的。WebService完全可以用"以BasicHttpBinding方式运行的WCF"代替。经过我的实际测试:对于基本类型(比如int,string,datetime以及它们对应的arrry以list),flex调用时能正确识别并“翻译”成as3中对应的int,String,Date以及Array类型,而复杂类型(比如自己在c#中定义的实体类或DataTable),flex调用 阅读全文
posted @ 2011-04-09 22:49 菩提树下的杨过 阅读(3410) 评论(5) 推荐(1) 编辑
摘要: 1、ModuleLoader在Asp.Net开发中,经常会把页面的公共部分封装成自定义控件ascx,以达到重用或动态加载的目的。在Flex4中MXML Module能达到类似的功能,可以把某些功能单独封装成在一个Module,然后利用ModuleLoader动态加载。每个MXML Module在Build时,会生成一个同名的swf(比如A.mxml会生成A.swf),但是不能单独运行。然后在主界面的mxml中,利用ModuleLoader组件来加载,示例代码如下:<?xml version="1.0" encoding="utf-8"?>&l 阅读全文
posted @ 2011-04-07 15:26 菩提树下的杨过 阅读(4059) 评论(0) 推荐(1) 编辑
摘要: flex4中推荐使用spark组件来布局,所以在工具箱里把HDividedBox,VDividedBox这二个非常有用的东东给隐藏掉了,只能手动在source视图下手动写标签,如下:<?xml version="1.0" encoding="utf-8"?><s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library 阅读全文
posted @ 2011-04-07 10:52 菩提树下的杨过 阅读(5109) 评论(0) 推荐(0) 编辑
摘要: 用iphone或itouch登录过微薄的同学们想必都会发现:登录一些手机版网站(比如微薄时),表单中的输入框会自动放大,以方便用户输入,等输入完成后,页面会再次缩小到正常状态。在flex开发过程中,有时也会遇到一些输入项很多的表单,可以借鉴iphone上的这种体验,基本思路就是:将整个容器放大,以适应屏幕,然后将获得焦点的文本框定位到屏幕中央。下面是演示:当UserName与PassWord文本框获得焦点时,表单(其实就是panel)会自动放大,并重新定位,最终将获得焦点的文本框定位在屏幕中央,以方便输入。点击checkbox或login按钮时,会恢复正常大小。主要代码:<?xml ve 阅读全文
posted @ 2011-04-06 21:03 菩提树下的杨过 阅读(1824) 评论(7) 推荐(0) 编辑
摘要: c#4.0中的dynamic早已不是新闻了,虽然内部用反射机制,略微会有一些性能上的额外开销,但是有些特殊场景还是很有用的,二害相权,取其轻吧(也正是因为这些动态编程特性,Python,Ruby这类动态语言能更方便的融入到.net平台中)using System;using System.Collections.Generic;using System.Dynamic;namespace DynamicTest{ class Program { public static void Main(string[] args) { dynamic obj = new ExpandoObject(); 阅读全文
posted @ 2011-04-04 23:02 菩提树下的杨过 阅读(1104) 评论(0) 推荐(1) 编辑
摘要: 不变/协变/逆变,4.0中的这几个概念越念越象绕口令,如果单纯死记硬背,就算记住了,时间长了还是会忘记的。园子里已经有不少高手撰文写过这个话题:比如“装配脑袋”的NET 4.0中的泛型协变和反变 (2008年他就已经搞明白了这个概念)、偶像Artech的“C# 4.0新特性-"协变"与"逆变"以及背后的编程思想” 以及1-2-3的 协变(Covariance)和逆变(Contravariance)的十万个为什么这里只是从应用的角度,简单记录一下:从.net3.5开始,System命名空间里就定义了一个泛型委托,原型如下:public delegate T 阅读全文
posted @ 2011-04-04 21:30 菩提树下的杨过 阅读(2541) 评论(0) 推荐(1) 编辑
上一页 1 ··· 13 14 15 16 17 18 19 20 21 ··· 34 下一页