wpf 订阅
WPF(Windows Presentation Foundation)是微软推出的基于Windows 的用户界面框架,属于.NET Framework 3.0的一部分。它提供了统一的编程模型、语言和框架,真正做到了分离界面设计人员与开发人员的工作;同时它提供了全新的多媒体交互用户图形界面。 展开全文
WPF(Windows Presentation Foundation)是微软推出的基于Windows 的用户界面框架,属于.NET Framework 3.0的一部分。它提供了统一的编程模型、语言和框架,真正做到了分离界面设计人员与开发人员的工作;同时它提供了全新的多媒体交互用户图形界面。
信息
属    于
微软
类    型
图形系统
中文名
Windows呈现基础
外文名
Windows Presentation Foundation
WPF定义
WPF 为Windows Presentation Foundation的首字母缩写 ,中文译为“Windows呈现基础”,其原来代号为“Avalon”,因与“我佩服”拼音首字母组合一样,国内有人调侃地称之为“我佩服”。由 .NET Framework 3.0 开始引入,与 Windows Communication Foundation及 Windows Workflow Foundation并行为新一代 Windows操作系统以及 WinFX 的三个重大应用程序开发类库。WPF是微软新一代图形系统,运行在.NET Framework 3.0及以上版本下,为用户界面、2D/3D 图形、文档和媒体提供了统一的描述和操作方法。基于DirectX 9/10技术的WPF不仅带来了前所未有的3D界面,而且其图形向量渲染引擎也大大改进了传统的2D界面,比如Vista中的半透明效果的窗体等都得 益于WPF。 程序员在WPF的帮助下,要开发出媲美Mac程序的酷炫界面已不再是遥不可及的奢望。 WPF相对于Windows客户端的开发来说,向前跨出了巨大的一步,它提供了超丰富的.NET UI 框架,集成了矢量图形,丰富的流动文字支持(flow text support),3D视觉效果和强大无比的控件模型框架。Windows Presentation Foundation(以前的代号为“Avalon”)是 Microsoft 用于 Windows 的统一显示子系统,它通过 WinFX 公开。它由显示引擎和托管代码框架组成。Windows Presentation Foundation 统一了 Windows 创建、显示和操作文档、媒体和用户界面 (UI) 的方式,使开发人员和设计人员可以创建更好的视觉效果、不同的用户体验。Windows Presentation Foundation 发布后,Windows XP、Windows Server 2003 和以后所有的 Windows操作系统版本都可以使用它。WPF是.Net Framework 3.0 里新推出的主打功能之一,加上Vista集成.Net Framework 3.0,改写Winform时代,可谓是影响巨大!WPF是一套API函数库,由.Net FrameWork3.0以上版本类库运行。WPF是Windows操作系统中一次重大变革,与早期的GDI+/GDI不同。WPF是基于DirectX引擎的,支持GPU硬件加速,在不支持硬件加速时也可以使用软件绘制。高级别的线程绘制可以提高使用者的体验。自动识别显示器分辨率并进行缩放。而Vista就是一个非常典型的例子。 [1] 
收起全文
精华内容
参与话题
问答
  • WPF

    千次阅读 2017-10-10 10:44:03
    知乎:为什么很少看到使用WPF开发的流行的应用程序呢? 因为wpf一点都不棒,你不要看了个tutorial,getting started教程,写了个todo list,就觉得xaml布局很强大,binding很牛逼,写到大型应用你就会发现,坑...

    知乎:为什么很少看到使用WPF开发的流行的应用程序呢?

    因为wpf一点都不棒,你不要看了个tutorial,getting started教程,写了个todo list,就觉得xaml布局很强大,binding很牛逼,写到大型应用你就会发现,坑是无比的多,碰到问题没有社区,你只能自己解决。而且你还会被微软坑,最近的.net 4.7就一堆wpf的狗屁bug。

    总结,wpf的开发体验连ios都不如,更不如web android,wpf哪天死了我是很开心的


    作者:Linn
    链接:https://www.zhihu.com/question/23598623/answer/201420032
    来源:知乎
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

    xaml:

    binding:

    百度百科:WPF

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

    它提供了统一的编程模型、语言和框架,真正做到了分离界面设计人员与开发人员的工作

    同时它提供了全新的多媒体交互用户图形界面???


    WPF在国内还有希望和前途吗?
    为什么大公司不会使用它?QQ出了个概念版还很少更新,wpf是不是没前途了?

    作者:匿名用户
    链接:https://www.zhihu.com/question/26862663/answer/76386239
    来源:知乎
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

    作为做过3年多wpf开发,我也来说几句,
    先说优点
    1、wpf这个ui框架是很前沿的,包含了很多界面开发的特性,非常灵活,因为个人做界面开发比较多,包括web,iOS,android都接触过,wpf是我认为目前设计的最好的ui界面库
    2、好的界面库有好的ide支持,vs的好用大家都懂得
    3、一个功能多种实现方案,虽说灵活但实际对开发人员的要求更高,需要有更好的设计能力,追求优雅设计,MVVM模式讲究让界面代码尽量xaml化
    4、强大的.net类库支持,ms平台的特性一向是入门简单,精通难,而且方案更新快,开发人员都比较依赖微软更新,开源力量还不够
    5、基于DirectX渲染,渲染效率好,确实有很多优点
    再说缺点吧
    1、内存占用高,基于.net的反射机制和wpf的内部机制,你想把控内存真心是难,只能一定程度控制,c++就不一样,内存是可控的
    2、功能太多导致学习成本非常高,传统开发理念需要转换MVVM,但由于控件支持不完善,会出现不伦不类的情况
    3、平台推广不利,这个才是最大原因,可以说是本人在.net多年学了很多,写代码是需要思考才能积累经验的,这种模式不适合互联网的快递跌代节奏,市场从业的机会太少,导致发展缓慢
    4、功能不够完善,ms的客户端技术方案太多了,wpf只是其中一种,本来wp是一个机会,奈何wp又推不起来,个人感觉wp开发功能较wpf缩水厉害,后面又为silverlight加了很多轻量技术方案然后引入wpf,搞得不伦不类,已经把平台分为wpf,sl,wp,win 8 morden ui
    5、平台真心混乱 自从 win8出来以后,我看到了win 8 morden ui,看了下sdk,又是一套api,感觉又是一个坑,果断决定放弃了,因为平台没有市场,去学习毫无意义,太多时间耗费在.net平台上了,感觉微软的策略真心是有问题,也得出一个结论,微软是一个比较喜欢玩技术的公司,跟着玩你会发现真的被玩了,现在看ios开发,反而感觉设计的好简单暴力,有时候给太多技术方案给开发人员不是一个好事情

    最后总结
    1、wpf技术是个好东西,是界面开发技术的精华,值得学习
    2、wpf不是一切,是界面开发的一种方案,PC客户端开发坑很多,精通的话门槛很高,光会.net是不够的,底层得学
    3、平台推广不给力是关键

    以上个人见解


    MVVM让开发效率和代码可维护性提高很多。

    作者:cabbage
    链接:https://www.zhihu.com/question/26862663/answer/74463686
    来源:知乎
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

    我是2004年开始在微软内部做WPF的,应该算是国内最早的WPF开发人员了,现在WPF里面应该还有不少我的代码:-), MSDN上也有我做的一些关于WPF的讲座.
    我对WPF的看法是它有存在的理由,但是前景要基于Windows接下来的发展,具体能发展到哪一步很难讲.
    我觉得WPF本身是一个很不错的语言,容易上手,开发效率高,容易维护,缺点是需要很长时间精通,因为他很多东西设计的太flexible了,导致想实现一个效果有多种选择,而你需要一定的经验才知道那种是最好的选择。另外,现在如果你要开发一个应用,基本上是Android + iOS + Web. 很少有公司会在单独给Windows开发一个客户端,所以也导致WPF的采用率很低。
    一开始设计的缺陷和后来微软内部很多脑残决定,导致WPF现在的状态,比如
    1) WPF本身很heavy, 你用WPF做的程序,基本上10M+或者100M+内存使用时家常便饭
    2) 因为很heavy, 所以,后来出了Silverlight, 有点像缩减版的WPF. 但是微软推了几年,又决定不推了
    3) Windows8开始使用Jupiter,这个和WPF很像(毕竟是同一组人做出来的), 但是又有一些区别,导致程序要做不少改动才能运行,在一定程序上也阻碍的WPF的发展
    4) Windows Phone最开始用Silverlight, 后来又改成Jupiter, 也让很多开发人员不乐意在微软的平台上开发
    总之,微软在失落的10年里犯了很多错误,WPF现在的地位也跟这息息相关。
    虽然我个人很希望WPF能越来越好,但是具体如何,是基于Windows和Windows Phone的发展,目前看,Windows Phone应该是没戏了。最新的新闻是微软本来在Windows Phone上做了一套兼容Android App的环境,结果做完后,内部斗争又不发布了,在我看来又是一个脑残决定,所以Windows Phone是注定摆脱不了"没有用户所以没人做App, 没有App所有用户不愿意买"的怪圈了。


    不是国内WPF没有前途,而是国内很多公司不了解,不愿意去了解,另外就是WPF的成本高。

    其实这个问题从新手看就是这个技术以后对我涨工资跳槽前景如何。对成熟开发者,只要喜欢就足够了:)



    展开全文
  • WPF经典教程之WPF命令

    千次下载 热门讨论 2014-10-05 01:16:30
    WPF中的命令路由与事件路由是两个很让初学者头痛的概念,对于命令路由可以理解为,系统(WPF)定义了一系列的操作,在应用程序中可以直接使用。例如,定义一系列菜单,执行对窗体中文本框的复制、剪切、粘贴操作,...
  • wpf示例wpf示例wpf示例wpf示例wpf示例wpf示例wpf示例

    千次下载 热门讨论 2009-05-21 11:19:42
    wpf示例wpf示例wpf示例wpf示例wpf示例wpf示例wpf示例wpf示例wpf示例wpf示例wpf示例wpf示例wpf示例wpf示例wpf示例wpf示例wpf示例wpf示例wpf示例wpf示例wpf示例wpf示例wpf示例wpf示例wpf示例wpf示例wpf示例wpf示例wpf...
  • WPF经典教程之[13]WPF资源

    千次下载 热门讨论 2014-10-09 10:43:04
    通常使用 WPF 资源作为重用通常定义的对象和值的简单方法。例如定义一种可以复用的单色的Brush对象,按钮的背景及矩形的填充颜色均使用此Brush。。。。。。 (更多资源:http://cleopard.download.csdn.net/) (福利:...
  • WPF经典教程之WPF控件模型

    千次下载 热门讨论 2014-10-05 00:48:45
    WPF经典教程之WPF体系结构 http://download.csdn.net/detail/cleopard/7999393 WPF经典教程之WPF应用程序管理 http://download.csdn.net/detail/cleopard/8002969 WPF经典教程之WPF窗体 ...
  • WPF经典教程之WPF控件内容模型

    千次下载 热门讨论 2014-10-05 00:54:29
    WPF控件内容模型主要指派生于System.Windows.Controls.Control类的各种控件,其主要分为四部分: • ContentControl • HeaderedContendControl • ItemsControl • HeaderedItemsControl 其继承关系请参考我上...
  • WPF开发教程 ----WPF C# 编程 界面开发(很不错)

    千次下载 热门讨论 2010-07-25 18:54:00
    WPF开发教程.rar 目录 WPF基础入门 3 1. WPF基础之体系结构 3 2. WPF基础之XAML 9 3. WPF基础之基元素 23 4. WPF基础之属性系统 26 5. WPF基础之路由事件 33 6. WPF基础之布局系统 46 7. WPF基础之样式设置和模板化...
  • WPF经典教程之WPF体系结构

    千次下载 热门讨论 2014-10-03 12:35:07
    WPF的基础的体系结构 所引用的Assembly如下图所示: 关系图中的PresentationFramework PresentationCore 和 milcore是 WPF 的主要代码部分 在这些组件中 只有一个是非托管组件 – milcore milcore 是以非托管代码...
  • WPF全系列事例代码

    千次下载 热门讨论 2012-11-17 17:01:56
    WPF基础教程所有相关的源代码,博客文章请查阅:http://blog.csdn.net/fwj380891124 之WPF板块类容。非常详细的介绍了WPF,适合初学者入门学习。
  • 选择winform还是WPF?

    2012-08-09 17:06:06
    最近要开发一个桌面的工具,开发环境为vs2010, 界面部分采用WPF还是传统的Winform呢? 1. 最终生成的可执行文件,哪个内存占用更小些? 2. WPF在界面效果上究竟有多大的优势? 大家一般选择哪种方案? 谢谢了
  • WPF界面设计

    千次下载 热门讨论 2012-05-13 20:02:47
    模仿金山卫士,360卫士,鲁大师等软件界面 完整源码奉上,一起学习,需要的来下载吧!
  • WPF界面全部用XAML语言手打,基本都是Grid布局,VS很强大,编程很舒服便捷,源码有很详细的注释。 * 学C#和WPF编的第一个软件,整个编程过程,通过百度不断学习 * 作者是做硬件的,只为学习做简单的上位机程序,...
  • WPF自定义控件开发Sample

    千次下载 热门讨论 2014-10-15 08:35:25
    一个关于WPF自定义开发的小例子 13份WPF经典开发教程 http://download.csdn.net/album/detail/1115 C#资料合辑二[C#桌面编程入门篇] http://download.csdn.net/album/detail/957 C#资料合辑一[C#入门篇] ...
  • WPF分页DataGrid

    千次下载 热门讨论 2012-05-29 15:30:31
    最近用到WPF的表格控件,需要使用分页功能,找了很多例子都不是很满意。有些是模仿SL做的DataPager导航条,使用的时候还要和DataGrid组合使用,不是很方便。最好还是继承DataGrid的分页表格控件。 于是自己动手封装...
  • WPF经典教程之WPF窗体

    千次下载 热门讨论 2014-10-05 00:32:25
    在Visual Studio和Expression Blend中,自定义的窗体均继承System.Windows.Window类(类型化窗体)。定义的窗体由两部分组成: 1、XAML文件。。...更多WPF资源:http://cleopard.download.csdn.net/
  • WPF经典教程之依赖项属性和路由事件

    千次下载 热门讨论 2014-10-05 01:10:07
    Windows Presentation Foundation (WPF) 提供了一组服务,这些服务可用于扩展公共语言运行时 (CLR) 属性的功能。这些服务通常统称为 WPF 属性系统。由 WPF 属性系统支持的属性称为依赖项属性。本概述介绍 WPF 属性...
  • WPF经典教程之WPF应用程序管理

    千次下载 热门讨论 2014-10-05 00:28:49
    一、WPF应用程序由System.Windows.Application类进行管理 二、创建WPF应用程序 创建WPF应用程序有两种方式: 1、Visual Studio和Expression Blend默认的方式,使用App.xaml文件定义启动应用程序 App.xaml文件的内容...
  • WPF经典教程之Canvas、InkCanvas布局

    千次下载 热门讨论 2014-10-05 00:45:06
    WPF中子元素的绝对定位的布局控件 其子元素使用Width、Height定义元素的宽度和高度 使用Convas.Left(Convas.Right)、Convas.Top(Convas.Bottom)定义与Convas容器的相对位置..... (更多资源:...
  • WPF经典教程之Panel Decorator TextBlock内容模型

    千次下载 热门讨论 2014-10-05 00:59:01
    Panel内容模型指从System.Windows.Controls.Panel...WPF经典教程之WPF控件模型 http://download.csdn.net/detail/cleopard/8002999 WPF经典教程之WPF控件内容模型 http://download.csdn.net/detail/cleopard/8003009
  • wpf 圆形菜单

    千次下载 热门讨论 2014-02-26 00:58:19
    wpf 圆形菜单 详细解说: http://www.cnblogs.com/ExMan/admin/EditPosts.aspx?postid=3567474&update=1
  • WPF经典教程之[11]键盘输入、鼠标输入、焦点处理

    千次下载 热门讨论 2014-10-05 01:11:42
    WPF提供了基础的键盘类(System.Input.Keyboard类),该类提供与键盘相关的事件、方法和属性,这些事件、方法和属性提供有关键盘状态的信息。Keyboard的事件也通过UIElement等XAML基元素类的事件向外提供。 对于键盘...
  • WPF仿360卫士9.0界面设计

    千次下载 热门讨论 2013-07-01 15:19:55
    WPF仿360卫士9.0界面设计 http://www.cnblogs.com/bdstjk/
  • WPF DataGridHyperlinkColumn

    千次阅读 2016-06-09 11:05:36
    为了点击链接,我们使用 ,Mode=TwoWay}" CanUserDeleteRows="True" AutoGenerateColumns="False" CanUserSortColumns="True

    为了点击链接,我们使用

                        <DataGrid x:Name="data" LoadingRow="load"  ItemsSource="{Binding Path=pull_gmc,Mode=TwoWay}" CanUserDeleteRows="True" AutoGenerateColumns="False" CanUserSortColumns="True">
                            <DataGrid.Columns >                            
                                <DataGridHyperlinkColumn Header="产品链接" ContentBinding="{Binding Path=prond}" Binding="{Binding Path=productId}">
                                    <DataGridHyperlinkColumn.ElementStyle>
                                        <Style TargetType="TextBlock">
                                            <EventSetter Event="Hyperlink.Click" HandledEventsToo="False" Handler="url"></EventSetter>
                                            <!--<EventSetter Event="MouseLeftButtonDown" Handler="url"></EventSetter>-->
                                        </Style>
                                    </DataGridHyperlinkColumn.ElementStyle>
                                </DataGridHyperlinkColumn>
                            </DataGrid.Columns>
                        </DataGrid>
        public class gmccolleague
        {
            public gmccolleague()
            {
            }
    
            /// <summary>
            /// 产品链接
            /// </summary>
            public string productId
            {
                set;
                get;
            }
    
            public static string prond
            {
                set;
                get;
            } = "产品链接";
    
            public int total
            {
                set;
                get;
            }
    
            /// <summary>
            /// 关键字
            /// </summary>
            public string primary
            {
                set;
                get;
            }
    
            /// <summary>
            /// 标题
            /// </summary>
            public string title
            {
                set;
                get;
            }
    
            /// <summary>
            /// 产品类别
            /// </summary>
            public string leaf_cat_name
            {
                set;
                get;
            }
    
            /// <summary>
            /// 使用次数
            /// </summary>
            public int count
            {
                set;
                get;
            }
    
            /// <summary>
            /// 质量得分
            /// </summary>
            public string iq_score
            {
                set;
                get;
            }
        }
    
            public ObservableCollection<gmccolleague> pull_gmc
            {
                set;
                get;
            } = new ObservableCollection<gmccolleague>();
    
    
            private void url(object sender, RoutedEventArgs e)
            {
                try
                {
                    Uri destination = ((Hyperlink)e.OriginalSource).NavigateUri;
                    Process.Start("http://" + destination.ToString());
                }
                catch 
                {
    
                }
            }
    展开全文
  • WPF登录界面

    千次下载 热门讨论 2013-05-26 21:35:34
    WPF界面设计(很帅)+登录验证用户名跟密码固定值123+跳转功能+按钮的键盘快捷键添加(登录用键盘键enter替代)
  • WPF翻转动画示例

    千次下载 热门讨论 2013-04-10 17:29:29
    本示例利用WPF中的三维模型,以及三维变换,再加以动画功能做出来的水平翻转效果,即图形绕Z轴旋转。
  • WPF学习笔记——没有前途的WPF

    万次阅读 2014-05-31 11:34:02
    看上去,WPF比silverlight有前途一点。毕竟,微软还没有xu

    看上去,WPF比silverlight有前途一点。毕竟,微软还没有宣布,WPF停止更新。

    但我怀疑,不久的将来,WPF也会步其子集silverlight的后尘,要么不再出后续版本,要么向HTML5 + CSS3转型。

    WPF主要负责UI。虽然只要我们愿意,也可以像WINFORM那样,做出很强的逻辑处理程序,但其本意,只在于负责界面工作,有逻辑处理,也是跟界面有关。写WPF程序,一般会倾向于遵循MVVM模式吧。

    这种思想挺不错,问题在于,WPF自己搞了一套界面定义语言:XAML。

    多么复杂的一套东西!为了呈现一些样式,图片,又模板,又资源,层层嵌套,代码冗长得无以复加。我以前一直从事WEB开发,自问对HTML 、 CSS 都比较熟悉,按理看WPF的Style之类,不会觉得太困难,但事实上,那么多的代码,我头都大了。

    为什么要这么做呢?进入互联网时代那么久了,WEB前端处理的界面是如此绚烂多彩,数以万计的程序员对CSS都是那样的了解,又何必另起炉灶,独辟蹊径,再搞一套什么XAML!可能当年WPF出来时,HTML5 和 CSS3 还没有出来,但HTML 和 CSS的确早已成为业界标准,人人耳熟能详,那么出个CSS + HTML的加强版不就行啦。

    微软可能自大惯了,总以为自己能创立业界标准,搞了许多昙花一现的短命产品,苦了我们这批跟着微软屁股后面跑的微软系程序员,整天学着用这工具、用那工具,时间都浪费在这里,反而编程思想,真正有用的知识没有学到。

    看看伟大的谷歌,人家搞个开发语言,要么是JAVA语法的安卓,要么是javascript的node.js,根本不需要去再学什么语法,下下紧扣互联网,智能手机,反观微软,给人的印象,还拼命停留在PC时代。

    所以,现在因为工作需要,不得不用WPF,但我会注意学习MVVM的思想,而不会深究其界面的铺陈,能用就行。这是一种没有前途的语言。



    展开全文
  • <WpfToolkit:DataGridTemplateColumn x:Name="dtSelectAll" Header="全选?" Visibility="Collapsed" HeaderTemplate="{StaticResource SelectAllHeaderTemplate}"> <WpfToolkit:DataGridTemplateColumn....
  • WPF滑动切换画面

    千次下载 热门讨论 2012-12-12 21:55:12
    WPF滑动切换画面,类似于触摸移动画面,listbox
  • wpf仿iphone桌面翻页效果

    千次下载 热门讨论 2013-01-10 17:18:54
    wpf仿iphone桌面翻页效果,不满足翻页条件则回滚当页,另外增加了左右翻页按钮。
  • WPF漂亮的TabControl

    千次下载 热门讨论 2014-05-09 19:40:34
    WPF十分漂亮的TabControl,更改下样式就可以使用。不需要积分,下载后你不会后悔的。可以在正式项目中使用,强力推荐。

空空如也

1 2 3 4 5 ... 20
收藏数 69,552
精华内容 27,820
关键字:

wpf