当前位置: 首页 > news >正文

建湖做网站的公司福建省幕墙建设网站要报备吗

建湖做网站的公司,福建省幕墙建设网站要报备吗,做个网站要多少钱,做网站常用代码向右浮动怎么写01—简介之前也写过好多篇CM框架相关的项目实战文章#xff0c;比如#xff1a;C# WPF框架Caliburn.Micro快速搭建C# WPF框架Caliburn.Micro入门实例1C# WPF MVVM项目实战(进阶①)C# WPF MVVM项目实战(进阶②)C# WPF MVVM模式下在主窗体显示子窗体并获取结果C# WPF Caliburn.… 01—简介之前也写过好多篇CM框架相关的项目实战文章比如C# WPF框架Caliburn.Micro快速搭建C# WPF框架Caliburn.Micro入门实例1C# WPF MVVM项目实战(进阶①)C# WPF MVVM项目实战(进阶②)C# WPF MVVM模式下在主窗体显示子窗体并获取结果C# WPF Caliburn.Micro框架下利用Mef加载其它项目界面C# WPF mvvm模式下combobox绑定(listenum、Dictionaryint,string)C# WPF MVVM模式Caliburn.Micro框架下事件发布与订阅但是可能这些都是把一个综合性的项目分多个部分分别讲述的有些初学者没有从前往后连续起来阅读的话后面的部分可能就不容易理解了。其次因为没有整体的构思随着内容的增加项目越来越显得笨重和凌乱所以今天我重新搞了一个项目希望以尽量少的代码涵盖尽量多的知识点帮助大家更好的理解和使用CM框架。02—重要知识点CM框架的配置和启动CM框架自带ioc容器SimpleContainer用法MVVM开发模式事件聚合器EventAggregator进行事件发布和订阅属性通知① CM框架下基类PropertyChangedBase用法②PropertyChanged.Fody.3.1.3下 [AddINotifyPropertyChangedInterface]用法日志框架Common.Logging和log4net用法CM框架下命名约定以及事件关联用第三方库Xceed.Wpf.Toolkit.dll做等待窗体CM框架下Conductor用法CM框架下IWindowManager双检锁单例模式用法 ListBox数据绑定以及窗体切换如果以上知识点你都不敢兴趣或者已经熟知那这篇文章不适合你看到这里你就可以关闭网页了03—运行结果04—项目说明项目主要包括的类文件如下图① MainWindowViewModel.cs类using PropertyChanged; using System.Collections.ObjectModel;namespace Caliburn.Micro.Hello {[AddINotifyPropertyChangedInterface]public class MainWindowViewModel : PropertyChangedBase, IViewModel{private static readonly Common.Logging.ILog logger Common.Logging.LogManager.GetLoggerMainWindowViewModel();public IViewModel ActiveWindowView { get; set; }public ObservableCollectionstring ListBoxItems { get; set; } public string SelectedItem { get; set; }public MainWindowViewModel(){logger.Info($Enter [MainWindowViewModel].);ListBoxItems new ObservableCollectionstring() { };ListBoxItems.Add(ShellView);ListBoxItems.Add(EventAggregatorView);ListBoxItems.Add(ConductorView);logger.Info($Leave [MainWindowViewModel].);}public void ListBoxItems_SelectionChanged(){switch(SelectedItem){case ShellView:ActiveWindowView new ShellViewModel();break;case EventAggregatorView:ActiveWindowView EventAggregatorViewModel.Instance; break;case ConductorView:ActiveWindowView new ConductorViewModel(); break;default:break;}}} } [AddINotifyPropertyChangedInterface]需要引用第三方库PropertyChanged.Fody加上之后类里面的属性变更后会自动通知界面无需再一个个单独触发logger是定义的common logging的一个通用日志需要在nuget上引用Common.Logging.Log4Net1213ListBoxItems_SelectionChanged()是listbox的选择改变事件需要在前台附加事件ListBox NameListBoxItems Grid.Column0 SelectedItem{Binding SelectedItem} Margin2 cal:Message.Attach[Event SelectionChanged]  [Action ListBoxItems_SelectionChanged]/ActiveWindowView 是我的主窗体选择那个就激活那个ContentControl NameActiveWindowView/②ShellViewModel.cs类从ioc容器获取一个IWindowManager并显示SimpleContainerViewModel simpleContainerViewModel  new SimpleContainerViewModel();IWindowManager windowManager  IoC.GetIWindowManager();windowManager.ShowDialog(simpleContainerViewModel);CanSayHello和SayHello只有CanSayHello条件满足才会执行SayHellopublic bool CanSayHello{get { return !string.IsNullOrWhiteSpace(Name); }}public void SayHello(){ }③EventAggregatorViewModel.cs双检锁线程安全的单例模式private static EventAggregatorViewModel instance;private static object locker new object();/// summary/// 双检锁/// /summarypublic static EventAggregatorViewModel Instance{get{if (instance null){lock(locker){if (instance null){instance new EventAggregatorViewModel();}}}return instance;}}事件订阅需要继承事件接口IHandlePersonInfoEvenprivate readonly IEventAggregator eventAggregator;this.eventAggregator  IoC.GetIEventAggregator(); this.eventAggregator.Subscribe(this);事件处理方法public void Handle(PersonInfoEven message){PersonInfo message.ToString();}④SimpleContainerViewModel.cs  方法1 同步ui发布事件this.eventAggregator.PublishOnUIThread(i am a chinese); 方法2 开线程去发布 this.eventAggregator.Publish(new PersonInfoEven() {Name ZYR, Age 18, Sex man }, action {//方式①//Task.Factory.StartNew(action);//方式②Task.Run(action);});等待窗体BusyIndicator 需要引用第三方库Xceed.Wpf.Toolkit并添加名称空间xmlns:xctkhttp://schemas.xceed.com/wpf/xaml/toolkitxctk:BusyIndicator NamebusyIndicator BusyContentPublish Event ... IsBusy{Binding IsShow} Style{x:Null}⑤ConductorViewModel.cs此类需要继承Conductorobject将需要激活的实例放到ActivateItem就可以从界面绑定激活对应实例窗体ActivateItem(new ShellViewModel());05—源码下载项目有点长不可能每个细节都说得到位能看到这里的都是真爱那么下面给出源码百度网盘链接网盘链接https://pan.baidu.com/s/18LOVAIxy7WCWJisiPcOuAQ提取码添加小编微信获取小编微信mm1552923公众号dotNet编程大全
http://www.pierceye.com/news/425509/

相关文章:

  • 组织部信息化建设官方网站郑州平面设计公司
  • 可信网站标志网站分析数据
  • 个人求职网站设计惠州建网站
  • 南京网站制作学校南京有名的网站建设公司
  • wordpress 代码页面宁波专业优化网站制作公司
  • 中国建设行业网站第五届中国国际进口博览会召开时间
  • 做网站设计的有些什么职位wordpress h1 h2 h3
  • 广告公司寮步网站建设哪家好怎么样在百度上推广自己的产品
  • 做亚马逊和淘宝网站公司网站建设深圳
  • 济宁建设网站网站改版 合同
  • wordpress 网站费用北京网站建设 知乎
  • 网站设计师绩效网站页面那个图怎么做
  • 帮别人起名 做ppt的网站做一个网站需要服务器吗
  • 高端网站建设公司兴田德润可以不新产品推广策划方案
  • 建设银行如何网站设置密码嵊州市建设银行网站
  • 陕西 网站建设福州mip网站建设
  • 让人做网站 需要准备什么网站建设国内外现状
  • 滨海做网站公司网页设计模板 中文
  • 辽源市网站建设怎么学做电商
  • 做pc端网站行情网站标签化
  • 中国做的很好的食品网站php图片网站源码
  • 做自媒体小视屏哪个网站好邹平网站建设公司
  • 字体样式 网站layui 网站建设模板
  • 沈阳网站设计江苏城乡建设部网站首页
  • 网站手机端生成wordpress如何下载
  • 网站数据抓取怎么做营销型网站开发定制
  • 福州营销型网站建设中国建设工程信息网站
  • 怎么在服务器里面做网站公司网站模板怎么做
  • 网站建设制作设计营销公司杭州石家庄网络公司哪家好
  • 重庆网站制作特点优势互联免费主机