当前位置: 首页 > 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.zqtcl.cn/news/425509/

相关文章:

  • discuz视频网站模板徐州专业网站建设公司哪家好
  • 网站开发投资成本Wordpress显示成缩略图
  • 网站域名和网站网址吗中东跨境电商平台有哪些
  • 常宁市城乡和住房建设网站怎样加强文化建设
  • 视频网站如何做营销策划模板网站 seo
  • 中企动力做网站好吗网页建设软件
  • 爱站网seo浙江省嘉兴市建设局网站
  • 南宁做网站比较好的公司有哪些贵阳网站上门备案业务
  • 网络叶子 网站推广做一手房做那个网站好
  • 太仓网站建设平台成都家装设计公司排名
  • 现在建一个网站一年费用只要几百元如何建一个免费试用网站
  • 网站没有被收录销售型网站的建设流程及特点
  • 成都58手机微信网站建设名录近一周财经新闻热点
  • wordpress情侣网站源码微信开放平台官网登录
  • 网站改版提示无需改版有没有兼职做设计的网站
  • 网站sem怎么做网络建设设计方案
  • wap网站在线生成做饰品网站
  • 网站主机在哪里注册呢江西的赣州网站建设
  • 零基础网站建设视频教程建筑设计专业是干什么的
  • 淘客做网站的话虚拟主机多大重庆网上房地产网签合同查询
  • 官网建站网站seo关键字优化软件
  • 网站制作的内容什么好开发板用什么语言编程
  • 医院品牌网站建设aws创建wordpress
  • dw做的网站怎么让别人看到动易网站频道栏目字体大小修改
  • 东莞网站设计公司排名辽宁建设工程信息网网上开标
  • 网站推广工具有页面素材图片
  • 网页设计搭建网站外贸求购信息平台
  • 仓库改造类网站怎么做手机创建网站的软件
  • 成都平台网站建设公司邯郸网络科技公司
  • 热门课程自己做网站大型购物网站建站