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

绍兴网站建设seo如何设置网站默认首页

绍兴网站建设seo,如何设置网站默认首页,seo的方式有哪些,单位网站建设维护情况报告ReactiveUI MVVM框架#xff08;1#xff09;-Collections ReactiveUI使用动态数据#xff08;DynamicData#xff09;用于集合的操作。 当对动态数据集合进行更改时#xff0c;会产生更改通知#xff0c;通知表示为ChangeSet#xff0c;里面包含了更改信息#xff0…ReactiveUI MVVM框架1-Collections ReactiveUI使用动态数据DynamicData用于集合的操作。 当对动态数据集合进行更改时会产生更改通知通知表示为ChangeSet里面包含了更改信息多个更改通知为IObservableChangeSet。动态数据提供了两种特定的集合分别是SourceCacheTObject, TKey和SourceListT。第一个为带key的字典式也就是不能重复第二个为集合式。如何要将这两种集合转换为IObservableChangeSet可以使用Connect方法。 需要注意的是这跟WPF中常用的ObservableCollectionT的实现方式是不同的。 简单使用 从wpf中常用的ObservableCollectionT得到IObservableChangeSet。 // myList is ObservableCollectionT // myDerivedList is IObservableListT var myDerivedList myList.ToObservableChangeSet().Filter(t t.Status Something).AsObservableList();// myList is ObservableCollectionT // myDerivedCache is IObservableCacheT, TKey var myDerivedCache myList.ToObservableChangeSet(t t.Id).Filter(t t.Status Something).AsObservableCache();以上两种方式是线程不安全的加入myList绑定到了View上那么在View上也可能对myList进行更改。推荐的方法是先创建一个数据源。 var myList new SourceListT() var disposable myList.Connect() // 获得IObservableChangeSet.\\some other operation这种方法的好处是可以在后台线程上进行维护。比如 //ReadOnlyObservableCollection可以多线程操作 ReadOnlyObservableCollectionT bindingData; var disposable mySource.Connect() // make the source an observable change set.Sort(SortExpressionComparerT.Ascending(t t.DateTime)).ObserveOn(RxApp.MainThreadScheduler) // mySource 会在其他线程上更新.Bind(out bindingData).Subscribe(); ReactiveUI使用动态数据 开发时会遇到可变集合和不可变集合当对不可变集合进行处理时简单情况下可以使用ObservableAsPropertyHelperT它包含一个ObservableT。每次给集合赋予新的集合时会触发通知事件。 而对于可变集合往往采用动态数据的方式。 案例 public class Service {//定义一个数据集private readonly SourceListbool _items new SourceListbool();//暴露给外面public IObservableIChangeSetbool Connect() _items.Connect();public Service(){ _items.Add(true);_items.RemoveAt(0);_items.Add(false);} }ReadOnlyObservableCollection 动态数据往往使用ReadOnlyObservableCollectionT之类的类型对外公开而不是它本身的类型。IObservableIChangeSetT 和 IObservableIChangeSetTObject, TKey是可以观测类型IObservableIChangeSetT中含有集合更改的内容第一次使用ToObservableChangeSet()时会发出集合的当前状态。SourceList和SourceCache是可以使用多线程进行创建IObservableIChangeSetT等通常SourceList和SourceCache应该定义为Private而是通过Connect方法暴露给View。 public class ViewModel : ReactiveObject {private readonly ReadOnlyObservableCollectionbool _items;public ReadOnlyObservableCollectionbool Items _items;public ViewModel(){var service new Service();service.Connect()// Transform 和Select方法类似只不过是观察一个集合的变化且将元素投影到另一个集合.Transform(x !x)// Filter 类似于Where.Filter(x x)// 确保更先到UI线程..ObserveOn(RxApp.MainThreadScheduler)// 通过 .Bind() 方法实现可变集合包含新的数据并且刷新UI.Bind(out _items).Subscribe();} }ObservableCollectionExtended ObservableCollectionExtendedT是一个单线程集合如果要同步VM中的两个集合可以将其中一个声明为ObservableCollectionExtendedT另一个声明为ReadOnlyObservableCollectionT然后使用.ToObservableChangeSet()方法将其转换为IObservableIChangeSetT。 public class SynchronizedCollectionsViewModel : ReactiveObject {private readonly ReadOnlyObservableCollectionbool _derived;public ReadOnlyObservableCollectionbool Derived _derived;public ObservableCollectionExtendedbool Source { get; }public SynchronizedCollectionsViewModel(){Source new ObservableCollectionExtendedbool();Source.ToObservableChangeSet().Transform(value !value)// 在这里不需要使用ObserveOn更新UI线程因为它是单线程.Bind(out _derived).Subscribe();Source.Add(true);Source.RemoveAt(0);Source.Add(false);Source.Add(true);} }根据集合中的更改 ReactiveObject类实现了INotifyPropertyChanged动态数据可以对ReactiveObject类进行跟踪。 // collectionOfReactiveObjects 是 ObservableCollectionT // T inherits 继承自 ReactiveObject // databasesValid 则是 IObservablebool var databasesValid collectionOfReactiveObjects.ToObservableChangeSet().AutoRefresh(model model.IsValid) // 订阅IsValid属性的更改.ToCollection() // 获取新项目集合.Select(x x.All(y y.IsValid)); // 验证是否满足条件.// 将IObservablebool 转为视图模型 // _databasesValid 是ObservableAsPropertyHelperbool 类型 _databasesValid databasesValid.ToProperty(this, x x.DatabasesValid);ReactiveList转为动态数据 如果使用的是ReactiveListT并且仅从UI线程添加/删除则使用ObservableCollectionExtendedT。
http://www.dnsts.com.cn/news/6787.html

相关文章:

  • 网站运营管理主要内容云南网站建设哪家便宜
  • 默认网站停止nginx进wordpress不能进目录
  • 网站建设用户量分析南京建设网站内容
  • 成都网站优化seo天津 网站 备案
  • 厦门建站方案南昌企业免费建站
  • 网站顶部flash下载典型网站开发的流程
  • 河北移动端网站制作屏边县住房和城乡建设局网站
  • 做电影网站程序好用吗做淘宝代码的网站
  • 备案网站可以做影视站自媒体平台是什么意思
  • 建立自己的购物网站北大青鸟计算机培训学费
  • 免费的ftp网站网站标头图片切换
  • 体育用品网站模板北京网站制作设计价格
  • 网站开发时如何设计英文版本可以推广网站
  • 肇庆住房和城乡建设局网站龙华网站建设的软件
  • 网站系统建设的主要意义做家电维修网站能接到单吗
  • 网站建设得花多少钱建设网站一般需要多少钱
  • 微信网站建设和维护报价表微信公众号同步wordpress
  • 哪些网站是做色选机销售的关键词举例
  • 分布式移动网站开发技术湛江制作网站学校
  • 贷款网站怎么做的石家庄网站平台
  • 深圳做分销网站公司百度竞价排名算法
  • 网站产品优化方案用百度网盘做视频网站
  • 检测网站安全电子商务主要干什么
  • 橱柜手机网站模板河南省建筑工程信息网
  • 做化工类网站内容国外做家装的网站有哪些
  • 网站设计方案谁写网站留言板 html
  • 网站建设与发布wordpress支付宝接口
  • 洪梅镇网站仿做wordpress菜单如何做
  • 电子商务网站推广实训心得暴雪代理最新消息
  • 上海网站建设找站霸网络0基础微信小程序开发教程