1. 什么是Expression Web

Expression Studio是微软在2007年推出的一套针对设计师的套件,其中包含专业的设计工具和新技术,可以弹性且自由地将设计方案转为实际——无论设计的是标准的网站、拥有丰富用户经验的桌面应用,或是管理数字资产和内容。它包含以下部分:

  • Expression Blend 4 + SketchFlow
  • Expression Web 4 + SuperPreview
  • Exression Design 4
  • Expression Encoder Pro

具体信息可以参考这里:

Expression Studio 4正式版发布 - jv9 - 博客园

Expression Studio_百度百科

其中,Expression Web 是一个专业的设计工具,可用来建立现代感十足、且以标准为基础的网站,让您在 Web 上提供绝佳的质量。 透过使用强大的设计工具和工作窗格快速地合并 XML 数据,减少复杂度和简化数据整合。

透过 Expression Web 和 Visual Studio 对于 XML、ASP.NET 和 XHTML 的绝佳支持,您可以顺畅地整合 Web 设计和开发团队。 透过复杂的 CSS 设计功能,释放您的创意点子,并替您的网站注入活力。可视化的设计工具、专门的工作窗格和工具列,让您精确地控制版面配置和格式。

具体信息可以参考这里:

Expression Web_百度百科

可是Expression这个品牌十分短命,5年后就被微软放弃了,只剩下被整合进Visual Studio的Blend,具体可见当时的报道:

微软终止 Web、设计和媒体工具 Expression 套件,Web 和 Design 免费提供下载

微软又嫌弃品牌多了,悄然砍掉Expression软件品牌

2. 为什么是Expression Web

最近打算写Blend的博客,突然来了兴致想看看很久没用过的Expression Studio,因为Expression Studio中的其它几个(Design,Encode)这两年时不时都还会用一下,所以就拿Web来怀旧。

这篇文章为什么分类为WPF?因为Expression Studio的剩余价值不在于它开发Web的功能,而在于它本身是一个有趣WPF软件。

3. Expression Web的功能

最新版的Web可以在以下地址下载:

Download Microsoft Expression Web 4 (Free Version) from Official Microsoft Download Center

安装画面即使现在看来也还是很漂亮,好歹当年是主打设计功能的软件,它本身的设计也不能差。

安装完后在“About”窗口可以看到最后更新是2012年。

这就是它的主界面,除了常用的Web设计功能,有两个功能我印象深刻,其中一个就是上图的Interactive Buttons,可以创建多个样式的按钮,并提供了这些按钮的图片。在当年我常常把这些图片拿去Silverlight上用。后来我写XAML越来越熟练,反而越来越觉得系统中的按钮应该越简洁越好,就再也不使用这种图片按钮了。

另一个印象深刻的功能是Microsoft Expression Web SuperPreview,它是微软发布的最好的IE调试工具,它可以让我们在各个版本 IE 浏览器下调试网站,使得网站在各个版本 IE 浏览器下兼容。在当时IE占有率有绝对优势的时候,说它是微软发布的最好的浏览器调试工具也不为过。

可是毕竟年代久远,在我的Windows 10电脑上已经运行不了IE6的部分,或许Windows 7 还可以试试吧。

4. Web的遗产

上面是正在被Visual Stuido 2019调试的Expression Web。在当时Expression Studio是微软发布的最漂亮的WPF软件,连右键菜单都经过精心设计,即使现在看来都很时髦(设计潮流又轮回了一次,最近微软又重新喜欢上了下面这种圆角设计):

Web运行速度也很快,整体UI十分流畅。既然已经不更新了,开源才是它们最好的归宿,毕竟现在很多WPF软件做得还不如当年的微Expression Studio,可惜微软完全没这个打算。如果有兴趣的话可以反编译抄抄它的控件,其实很久以前已经有人做过这方面的工作,例如这个项目:

WpfExpressionBlendTheme: A WPF theme which will make an application look like Expression Blend.

5. 结语

很多年前我还偶尔会用用Expression Web,前同事的设计师当年也常常夸Web好看又好用。另一个软件Design也很好用(10年前),有趣的是它的配色和最新的Adobe Illustrator 2020还很像,可以说微软难得前卫了一次:

[WPF] 考古Expression Web:微软当年最漂亮的WPF软件的更多相关文章

  1. WPF从入门到放弃系列第一章 初识WPF

    什么是WPF WPF(Windows Presentation Foundation)是微软推出的基于Windows Vista的用户界面框架,属于.NET Framework 3.0的一部分.它提供 ...

  2. WPF和Expression Blend开发实例:一个样式实现的数字输入框

    原文:WPF和Expression Blend开发实例:一个样式实现的数字输入框 今天来一个比较奇淫技巧的手法,很少人用,同时也不推荐太过频繁的使用. 先上样式: <Style x:Key=&q ...

  3. WPF和Expression Blend开发实例:模拟QQ登陆界面打开和关闭特效

    不管在消费者的心中腾讯是一个怎么样的模仿者抄袭者的形象,但是腾讯在软件交互上的设计一直是一流的.正如某位已故的知名产品经理所说的:设计并非外观怎样,感觉如何.设计的是产品的工作原理.我觉得腾讯掌握了其 ...

  4. SharePoint 使用Expression Web 设计网站

    创建好网站以后可就可以开始发布了 possible causes : 1.The web server may not hava the FrontPage Server Extensions ins ...

  5. Java/javaEE/web/jsp/网站编程环境配置及其软件下载和网站路径

    Java/javaEE/web/jsp/网站编程环境配置及其软件下载和网站路径 (2015/07/08更新) JDK下载地址(JDK官网下载地址) 下载地址为:http://www.oracle.co ...

  6. WPF笔记(1.8 资源与映射)——Hello,WPF!

    原文:WPF笔记(1.8 资源与映射)--Hello,WPF! 终于,看明白了,已经是凌晨1:39分.这本书这一节写得实在是不好,一个local搞得我糊里糊涂,于是,准备按照他的思路,按照我的理解,改 ...

  7. WPF编程,获取句柄将外部程序嵌入到WPF界面。

    原文:WPF编程,获取句柄将外部程序嵌入到WPF界面. 版权声明:我不生产代码,我只是代码的搬运工. https://blog.csdn.net/qq_43307934/article/details ...

  8. 浅谈WPF中对控件的位图特效(WPF Bitmap Effects)

    原文:浅谈WPF中对控件的位图特效(WPF Bitmap Effects) -------------------------------------------------------------- ...

  9. WPF 使用DMSkin for WPF 快速搭建漂亮的WPF程序

    DMSkin-for-WPF是一个基于WPF的.Net WPF开源界面库,实现了无边框的WPF开发方案,内置部分控件模板. 你可以参照模板自行修改完善.(以下简称DFW). 核心 DFW实现了比较完美 ...

随机推荐

  1. JRebel 破解使用

    步骤1:生成一个GUID:在线生成GUID地址 步骤2: 根据反向代理服务器地址拼接激活地址 服务器地址: https://jrebel.qekang.com/{GUID} 如果失效刷新GUID替换就 ...

  2. iOS 预渲染加速图像显示

    使用 UITableView 时,发现滚动时的性能还不错,但来回滚动时,第一次显示的图像不如再次显示的图像流畅,出现前会有稍许的停顿感. 于是猜想显示过的图像肯定是被缓存起来了,查了下文档后发现果然如 ...

  3. 读者来信-5 | 如果你家HBase集群Region太多请点进来看看,这个问题你可能会遇到

    前言:<读者来信>是HBase老店开设的一个问答专栏,旨在能为更多的小伙伴解决工作中常遇到的HBase相关的问题.老店会尽力帮大家解决这些问题或帮你发出求救贴,老店希望这会是一个互帮互助的 ...

  4. 数据分析_numpy_基础2

    数据分析_numpy_基础2 sqrt 开方 arr = np.arange(10) arr # array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) np.sqrt(arr) ...

  5. [HDU]1166敌兵布阵<静态线段树>

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1166 题目大意:给出n个点,每个点有一个值,现在有三种操作, 1.在i点加上j 2.在i点减去j 3. ...

  6. c++ 常量/有符号数和无符号数

    一.宏定义 #define 和常量 const 1. const关键字 const是constant的简写,只要一个变量前面用const来修饰,就意味着该变量里的数据可以被访问,不能被修改.也就是说c ...

  7. codeforces 1038a(找最长的前k个字母出现相同次数的字符串)

    codeforces 1038a You are given a string s of length n, which consists only of the first k letters of ...

  8. input radio点击选中再点击取消

    这里主要说一下这个jquery中的data()方法,个人感觉这个方法平时挺少用到的,所以说一说,按照官方的解释就是 向元素附加数据,然后取回该数据; 嗯,是的,就是这么简单. 那这里说一下这个方法的使 ...

  9. 简单记录下RestTemplate 中postForObject调用例子

    学无止境! 今天无意中做了下RestTemplate调用demo,简单的尝试了下一个项目调用另一个项目接口示例 在A项目中创建可访问controller 然后在B项目中进行调用 调用成功

  10. redis持久化(RDB、AOF、混合持久化)

    redis持久化(RDB.AOF.混合持久化) 1. RDB快照(snapshot) 在默认情况下, Redis 将内存数据库快照保存在名字为 dump.rdb 的二进制文件中. 你可以对 Redis ...