Questions tagged «wpf»

WPF是用于在基于Windows的应用程序中呈现用户界面的图形子系统。

5
为什么要用最少的用户/手写代码来完成XAML中的所有工作?
我觉得MVVM社区已经像90年代的OO程序员一样变得过分热情-这是一个错误的称呼MVVM是没有代码的代名词。从我关闭的StackOverflow问题中: 我多次在这里遇到有关某人试图在XAML中完成等效操作而不是在后面编写代码的帖子。他们唯一的理由是他们希望将代码保持在“干净”的后面。如果我错了,请纠正我,但事实并非如此: XAML也被编译为BAML,然后无论如何在运行时都必须将其解析为代码。XAML可能具有更多的运行时错误,因为编译器在编译时不会从错误的拼写中拾取它们,这些错误也更难调试。后面已经有代码-是否喜欢InitializeComponent(); 必须运行,并且其中的.gics文件包含一堆代码,尽管它可能是隐藏的。这纯粹是心理上的吗?我怀疑是开发人员来自网络背景,喜欢标记而不是代码。 编辑:我不建议在XAML后面编写代码-两者都使用-我也希望在XAML中进行绑定-我反对采取一切措施避免在WPF应用程序中的esp后面编写代码-这应该是两者都可以最大程度地发挥作用。 更新:这甚至不是微软的想法,MSDN上的每个示例都展示了如何在两者中都可以做到。
12 c#  wpf 

1
我如何在没有C#知识的情况下进行认真的F#项目?
因此,基本上我希望承担的项目是SVG编辑器。我更喜欢使用WPF,因为这样我就可以在应用程序布局中使用XAML(那个设计师是如此漂亮)。不幸的是,我仅使用.NET框架仅几个月,而对大多数类名仍然不熟悉。 目标是使用F#,因为它是一种功能编程语言,并且F#的递归和与元组结合的出色列表操作将很好地实现我想要实现的目标。而目标是使用.NET,因为它拥有大量可用的和有文档的示例类库。 我已经看过这个问题了。/software/3129/is-there-a-canonical-book-on-f 但答案仅适用于F#,并假定您已经知道C#,这对我来说并不是特别有用。 回答上述问题的顶级书籍是《 Real-World Functional Programming:F#和C#中的示例》。但是,这本书上的三星级亚马逊评论虽然相当苛刻,甚至可能被夸张地正确说明了我的问题。 如果您对函数式编程感兴趣,但是您不是想学习F#的C#,则可以安全地跳过这本书。 我在网上查看了WPF F#示例,到处都有各种代码片段,但是没有实质性的内容或证明它在单个文件脚本.fsx之外使用,也没有真正的企业级甚至专业级的代码。 因此,即使Microsoft确实也没有很多关于如何在F#中执行.NET的示例。我发现的示例通常仅是F#特有的功能。看一下F#的基础和高级部分,您会发现它们仅教语法。例如,Line类在WPF上的MSDN上在F#中没有任何代码示例。 向下滚动F#的代码示例选项卡时,它只是说 No code example is currently available or this language may not be supported. 由于可用的代码示例很少,因此我很难进行这个项目。 我的问题 是对我不太了解C#时应如何使用F#处理该项目的帮助,我们将不胜感激。
11 wpf  f# 

2
在MVVM中,ViewModel或View应该负责创建新视图吗?
在我的WPF应用程序中,我想创建一个新视图。在ViewModel或Model中应该在哪里做? 该应用程序是一个(现在非常简单)单窗口形式的工具,带有单个“发送”按钮。如果选中其中一个复选框,则应弹出使用相同ViewModel的新窗口,要求用户提供一些其他详细信息。出于这个问题的目的,我们只考虑新窗口方法,而不考虑显示/隐藏面板之类的其他方法。 理想情况下,在View中应该没有任何代码。此外,由于View中没有任何逻辑,因此VM最初需要检查是否需要创建新视图,并且-在需要时-将这种责任退还给View,从而导致代码膨胀。 另一方面,在ViewModel中创建新视图违反了ViewModel不应该了解View的原则。 因此,在View或ViewModel中创建新视图更好吗?
11 c#  design  wpf  mvvm 

3
XML与SQL小型项目?
我正在做一个小项目,因为它是本地应用程序(在WPF和C#中开发),所以一次只能有一个用户。为了存储数据,我曾考虑使用XML文件,但我想知道这是否是最佳方法。 数据用于什么: 舍杜勒斯 文件夹中的文件库(带有艺术家名称,标题,HDD上的位置) 可能基于统计数据进行统计 ... 我想像中有关该库的信息会很好用XML,但是对于其余所有信息我都不太确定。同样,就开发速度而言,LINQ to SQL似乎比LINQ to XML更具收益。这是正确的还是我错了?我不确定是否应该将其发布在SO上或此处,但在这里似乎更合适! 先感谢您
10 sql  wpf  xml 

3
MVVM还是MVC?想要为WPF和ASP.NET使用相同的类集
就设计模式而言,我是新手。当我听到新的嗡嗡声MVVM时,我才开始学习MVC。 我想通过重新设计为客户开发的旧库存和开发票应用程序来学习这两者的见解。我想同时编写一个基于Windows的WPF应用程序和一个基于Web的版本。如果可能,我想使用相同的类集,如果没有,那么至少要稍加修改。 我读了几篇文章,但是我没有遵循那里讨论的.NET 3.5和4的体系结构和高级概念。我只想设计我实际项目中真正需要的东西,就一步一步地前进。 是否有关于MVVM的简单分步参考?MVVM是MVC的超集还是子集?对于我的应用程序的Windows和Web版本,哪种模式是现代的,应该选择哪种模式? 有些类几乎不需要与View连接。在那种情况下,以MVVM方式设计相同的类将被证明是一项额外的工作。
10 mvc  wpf  asp.net-mvc-3  mvvm 

3
我需要帮助来决定Silverlight / Silverlight浏览器外/ wpf之间
我正处于重新编写项目的初始计划阶段,并且要在silverlight / silverlight oob / wpf之间进行选择。TL; DR结尾。 这是一个处理潜在客户/客户/约会日历的LOB应用程序。不太复杂。我正在其他地方独立研究这些选项,但我想四处询问。一些粗略的初始要求/可预见的问题是: 我必须能够使用命令行参数(sip电话)在系统上调用exe。 使SL成为问题 用户群是分布式的,我想尽可能地限制通过网络的流量,并避免一些讨厌的并发问题 我可以看到这是使用WPF的问题 软件部署/更新必须非常简单。一些用户是非技术性的(请参阅:70岁,第一次使用计算机) 现在,我们要替换的ClickOnce应用程序并不是一个大问题,而且我可以控制使用它的计算机。但是,对于用户来说,甚至不必单击clickonce“安装”按钮就更简单了。我不知道Silverlight OOB是如何处理的。 该公司计划在12个月内进行一次艰难的扩展,因此硬件部署应该快速/轻松。这个想法是在新的位置建立互联网连接,插入一些计算机,并且不需要专门的IT人员或服务器即可工作。 使SL更具吸引力 与其他服务(财务软件,asterix服务器)的集成不是近期目标,但成为系统的一部分则是最终目标。如果将单个服务设置为与那些辅助服务集成,而不必通过有线传输所有数据,则此操作将变得更加简单/高效。 使SL更具吸引力 进行多个“版本”转换是不可能的。我不知道维护Silverlight + Silverlight oob版本是什么感觉(如果有任何问题) 可能使WPF成为更好的选择。 TL; DR:从我的角度出发,silverlight应用程序最适合90%的用户,而其他10%的用户则无法使用它,因为他们需要运行exe。Silverlight OOB可能是一个快乐的中间地带,但是我目前不知道它的执行模型是什么样的(是否还有服务器端代码的概念?如果是这样,那可能是理想的选择),但我不知道了解部署/更新的工作原理。
10 wpf  silverlight 

3
XAML标记的推荐控件命名约定是什么?
在使用WPF或Silverlight时,应该如何使用控件命名约定?您是否在XAML标记中命名控件?我在Codeplex上看到了带有控件名称(例如“ selectButton”或“ btnSelect”)的项目示例。你会推荐什么?
10 wpf  silverlight 

3
在MVVM WPF中将实体框架数据库上下文(模型)连接到ViewModel的最佳方法是什么?
如上述问题:在MVVM(WPF)中将实体框架数据库模型(上下文)连接到viewModel的最佳方法是什么? 我正在WPF中学习MVVM模式,很多示例展示了如何将模型实现为viewModel,但是该示例中的模型只是简单的类,我想将MVVM与实体框架模型一起使用(基于基础的方法)。将模型连接到viewModel的最佳方法是什么? 感谢您的回答。 //ctor of ViewModel public ViewModel() { db = new PackageShipmentDBEntities(); // Entity Framework generated class ListaZBazy = new ObservableCollection<Pack>(db.Packs.Where(w => w.IsSent == false)); } 这是我通常的ViewModel指导,认为有更好的方法,我正在阅读存储库模式,不确定是否可以将其适应WPF MVVM

1
MVVM在业务应用程序中的价值(以及当前的开发实践)
2年后,我仍在努力将MVVM作为生产工作软件的实用方法。在某些情况下,这很棒。我做了一个多线程应用程序,它控制着一条小型装配线,如果没有MVVM概念,那将是一场噩梦。从物理装配线中提取的内容几乎是毫无道理的。 但是,我的职业生涯主要围绕内部业务应用程序-规范和优化业务运营。在此类应用程序中,通常存在围绕CRUD和复合操作的业务领域。在LOB中,我的视图模型最终只是业务类方法的一个行包装函数的非常简单的集合,最后最终只会使最简单的任务(如显示消息框或打开窗口)复杂化。当人们对已经存在了数十年的Window.ShowDialog调用进行“依赖注入”和“消息提供程序”的长篇描述时,没有其他人会觉得奇怪吗?在堆栈溢出中还有多少其他问题要求对Winforms中极其简单的任务提供建议? 不要误会我的意思-我得到了MVVM,它对于大型团队进行横向包装和销售的软件包的水平开发具有无价的价值。对视图模型进行单元测试可以避免严重的RTM错误,从而节省数百万美元,而专门的UI开发人员可以提供丰富的体验。但是,当重新部署的成本最小并且所有企业需要支付的只是简单的工作软件时,为什么我的业务逻辑已经进行了单元测试时,为什么我应该花时间对简单的“包装” vm进行单元测试?这项业务真正可以花多少时间让我花在可爱的动画和配色方案上?初级开发人员还有什么要做的事情(在以前查看“ Save_Click”的保存功能中查找错误, 诚然,我真的很喜欢WPF的数据绑定。为了利用它,我将数据上下文设置为窗口本身,在该窗口中它可以访问业务类以及任何其他可观察的属性。是的,我这样做几乎破坏了所有的MVVM“规则”。但是至少我有简单的事件驱动代码,易于阅读,而且可以利用新的数据绑定和验证。问题出在设计师身上-我并没有使用太多,但希望现在可以在2012年更好地进行集成-设计师展示了窗口及其基类具有的数百个属性。 对于那些可以关联的人,您可以指出我的资源,书籍,甚至只是观点的改变而使之更容易被吞噬。我会再试一试MVVM,但是上一次我为担心依赖项注入只是为了显示来自VM的消息框而感到非常愚蠢,我不打算进行单元测试。即使我进行了单元测试,通过对那些令人恐惧的“紧密耦合”应用程序的编译时错误进行交易时测试,我们是否真的能获得更高的质量? 我知道一个答案是只停留在winforms中。但是,作为WebForms的最后支持者之一(我对Web开发的趋势有很多相同的批评),当我发现发现Microsoft认证途径中再也没有WebForms时,我感觉就像是恐龙。前进是唯一的选择,即使我不喜欢它也是如此。
9 wpf  mvvm 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.