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

做网站用什么好网站建设的推进方案

做网站用什么好,网站建设的推进方案,建筑资质最新政策2023年,注册有限公司需要多少钱目录 1、实现属性更改通知 示例 2、双向绑定​​​更新源 示例 3、对分层数据使用主-从模式 示例 4、对分层 XML 数据使用主-从模式 示例 5、绑定两个控件的属性 示例 6、创建和绑定到 ObservableCollection 示例 7、使用 XMLDataProvider 和 XPath 查询绑定到 XML…目录 1、实现属性更改通知 示例 2、双向绑定​​​更新源 示例 3、对分层数据使用主-从模式 示例 4、对分层 XML 数据使用主-从模式 示例 5、绑定两个控件的属性 示例 6、创建和绑定到 ObservableCollection 示例 7、使用 XMLDataProvider 和 XPath 查询绑定到 XML 数据 示例 1、实现属性更改通知 若要支持 OneWay 或 TwoWay 绑定从而使绑定目标属性能够自动反映绑定源的动态更改。 示例 若要实现 INotifyPropertyChanged需要声明 PropertyChanged 事件并创建 OnPropertyChanged 方法。 然后对于每个需要更改通知的属性只要进行了更新就可以调用 OnPropertyChanged。 using System.ComponentModel; using System.Runtime.CompilerServices;namespace SDKSample {// This class implements INotifyPropertyChanged// to support one-way and two-way bindings// (such that the UI element updates when the source// has been changed dynamically)public class Person : INotifyPropertyChanged{private string name;// Declare the eventpublic event PropertyChangedEventHandler PropertyChanged;public Person(){}public Person(string value){this.name value;}public string PersonName{get { return name; }set{name value;// Call OnPropertyChanged whenever the property is updatedOnPropertyChanged();}}// Create the OnPropertyChanged method to raise the event// The calling members name will be used as the parameter.protected void OnPropertyChanged([CallerMemberName] string name null){PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(name));}} }2、双向绑定​​​更新源 本示例介绍了如何使用 UpdateSourceTrigger 属性控制绑定源更新的执行时间。 本主题使用 TextBox 控件作为示例。 示例 TextBox.Text 属性的 UpdateSourceTrigger 默认值为 LostFocus。 这意味着如果应用程序的 TextBox 包含数据绑定 TextBox.Text 属性则直到 TextBox 失去焦点例如将鼠标移到 TextBox 外单击时键入到 TextBox 中的文本才会更新源。 如果希望在键入过程中更新源请将该绑定的 PropertyChanged 设置为 UpdateSourceTrigger。 在下面的示例中突出显示的代码行显示 TextBox 和 TextBlock 的 Text 属性都绑定到相同的源属性。 TextBox 绑定的 UpdateSourceTrigger 属性设置为 PropertyChanged。 Windowxmlnshttp://schemas.microsoft.com/winfx/2006/xaml/presentationxmlns:xhttp://schemas.microsoft.com/winfx/2006/xamlxmlns:srcclr-namespace:SDKSamplexmlns:systemclr-namespace:System;assemblymscorlibSizeToContentWidthAndHeightTitleSimple Data Binding SampleWindow.ResourcesObjectDataProvider x:KeymyDataSource ObjectType{x:Type src:Person}ObjectDataProvider.ConstructorParameterssystem:StringJoe/system:String/ObjectDataProvider.ConstructorParameters/ObjectDataProviderStyle TargetType{x:Type Label}Setter PropertyDockPanel.Dock ValueTop/Setter PropertyFontSize Value12//StyleStyle TargetType{x:Type TextBox}Setter PropertyWidth Value100/Setter PropertyHeight Value25/Setter PropertyDockPanel.Dock ValueTop//StyleStyle TargetType{x:Type TextBlock}Setter PropertyWidth Value100/Setter PropertyHeight Value25/Setter PropertyDockPanel.Dock ValueTop//Style/Window.ResourcesBorder Margin25 BorderBrushAqua BorderThickness3 Padding8DockPanel Width200 Height100LabelEnter a Name:/LabelTextBoxTextBox.TextBinding Source{StaticResource myDataSource} PathNameUpdateSourceTriggerPropertyChanged//TextBox.Text/TextBoxLabelThe name you entered:/LabelTextBlock Text{Binding Source{StaticResource myDataSource}, PathName}//DockPanel/Border /Window因此TextBlock 所显示的文本将与用户输入到 TextBox 中的文本相同因为源发生更改如该示例的以下屏幕快照所示 如果拥有一个对话框或用户可编辑的窗体并且希望将源更新延迟到用户完成字段编辑并单击“确定”之后可以将绑定的 UpdateSourceTrigger 值设置为 Explicit如下面的示例所示 TextBox NameitemNameTextBoxText{Binding PathItemName, UpdateSourceTriggerExplicit} /如果将 UpdateSourceTrigger 值设置为 Explicit则仅当应用程序调用 UpdateSource 方法时该源值才会发生更改。 下面的示例演示如何为 itemNameTextBox 调用 UpdateSource // itemNameTextBox is an instance of a TextBox BindingExpression be itemNameTextBox.GetBindingExpression(TextBox.TextProperty); be.UpdateSource();备注 此方法也可用于其他控件的属性但请记住其他大多数属性的默认 UpdateSourceTrigger 值为 PropertyChanged。 备注 UpdateSourceTrigger 属性用于处理源更新因此仅适用于 TwoWay 或 OneWayToSource 绑定。 若要使 TwoWay 和 OneWayToSource 绑定生效源对象需要提供属性更改通知。  3、对分层数据使用主-从模式 此示例演示了如何实现大纲-详细信息方案。 示例 在此示例中LeagueList 是 Leagues 的集合。 每个 League 都有一个 Name 和一个 Divisions 集合每个 Division 都有一个名称和一个 Teams 集合。 每个 Team 都有一个团队名称。 Windowxmlnshttp://schemas.microsoft.com/winfx/2006/xaml/presentationxmlns:xhttp://schemas.microsoft.com/winfx/2006/xamlxmlns:srcclr-namespace:SDKSampleWidth400 Height180TitleMaster-Detail Binding BackgroundSilverWindow.Resourcessrc:LeagueList x:KeyMyList/DockPanel DataContext{Binding Source{StaticResource MyList}}StackPanelLabelMy Soccer Leagues/LabelListBox ItemsSource{Binding} DisplayMemberPathNameIsSynchronizedWithCurrentItemtrue//StackPanelStackPanelLabel Content{Binding PathName}/ListBox ItemsSource{Binding PathDivisions} DisplayMemberPathNameIsSynchronizedWithCurrentItemtrue//StackPanelStackPanelLabel Content{Binding PathDivisions/Name}/ListBox DisplayMemberPathName ItemsSource{Binding PathDivisions/Teams}//StackPanel/DockPanel /Window下面是该示例的一个屏幕快照。 DivisionsListBox 自动跟踪 LeaguesListBox 中的所选项并显示相应的数据。 TeamsListBox 跟踪其他两个 ListBox 控件中的所选项。 此示例中有两点需要注意 三个 ListBox 控件绑定到同一个源。 设置了绑定的 Path 属性以指定希望 ListBox 显示的数据级别。 必须在要跟踪其所选项的 ListBox 控件上将 IsSynchronizedWithCurrentItem 属性设置为 true。 设置此属性可确保所选项始终设置为 CurrentItem。 或者如果 ListBox 从 CollectionViewSource 获取数据它会自动同步所选项和货币。 4、对分层 XML 数据使用主-从模式 此示例演示了如何使用 XML 数据实现大纲-详细信息方案。 示例 在此示例中数据来自文件 League.xml。 请注意第三个 ListBox 控件如何通过绑定到其 SelectedValue 属性跟踪第二个 ListBox 控件中的选择更改。 Window x:ClassSDKSample.Window1xmlnshttp://schemas.microsoft.com/winfx/2006/xaml/presentationxmlns:xhttp://schemas.microsoft.com/winfx/2006/xamlTitleMultiple ListBox Binding SampleWidth400 Height200BackgroundCornsilkWindow.ResourcesXmlDataProvider x:KeyMyList SourceData\Leagues.xmlXPathLeagues/League/DataTemplate x:KeydataTemplateTextBlock Text{Binding XPathname} //DataTemplate/Window.ResourcesDockPanel DataContext{Binding Source{StaticResource MyList}}StackPanelLabelMy Soccer Leagues/LabelListBox ItemsSource{Binding}ItemTemplate{StaticResource dataTemplate}IsSynchronizedWithCurrentItemtrue//StackPanelStackPanelLabel Content{Binding XPathname}/ListBox NamedivisionsListBoxItemsSource{Binding XPathDivision}ItemTemplate{StaticResource dataTemplate}IsSynchronizedWithCurrentItemtrue//StackPanelStackPanelLabel Content{Binding XPathname}/ListBox DataContext{Binding ElementNamedivisionsListBox,PathSelectedItem}ItemsSource{Binding XPathTeam}ItemTemplate{StaticResource dataTemplate}//StackPanel/DockPanel /Window5、绑定两个控件的属性​​​​​​​ 此示例演示如何使用 ElementName 属性将一个已实例化控件的属性绑定到另一个控件的属性。 示例 下面的示例演示如何将 Canvas 的 Background 属性绑定到 ComboBox 的 SelectedItem.Content 属性 Windowxmlnshttp://schemas.microsoft.com/winfx/2006/xaml/presentationxmlns:xhttp://schemas.microsoft.com/winfx/2006/xamlWidth460 Height200TitleBinding the Properties of Two ControlsWindow.ResourcesStyle TargetTypeTextBlockSetter PropertyFontSize Value16/Setter PropertyFontWeight ValueBold/Setter PropertyDockPanel.Dock ValueTop/Setter PropertyHorizontalAlignment ValueCenter//StyleStyle TargetTypeCanvasSetter PropertyHeight Value50/Setter PropertyWidth Value50/Setter PropertyMargin Value8/Setter PropertyDockPanel.Dock ValueTop//StyleStyle TargetTypeComboBoxSetter PropertyWidth Value150/Setter PropertyMargin Value8/Setter PropertyDockPanel.Dock ValueTop//Style/Window.ResourcesBorder Margin10 BorderBrushSilver BorderThickness3 Padding8DockPanelTextBlockChoose a Color:/TextBlockComboBox NamemyComboBox SelectedIndex0ComboBoxItemGreen/ComboBoxItemComboBoxItemBlue/ComboBoxItemComboBoxItemRed/ComboBoxItem/ComboBoxCanvasCanvas.BackgroundBinding ElementNamemyComboBox PathSelectedItem.Content//Canvas.Background/Canvas/DockPanel/Border /Window当此示例呈现时应如下所示 备注 绑定目标属性在本例中为 Background 属性必须是一个依赖属性。  6、创建和绑定到 ObservableCollection 本示例演示如何创建和绑定到派生自 ObservableCollectionT 类的集合该类是一个在添加或移除项时提供通知的集合类。 示例 下面的示例演示 NameList 集合的实现 public class NameList : ObservableCollectionPersonName { public NameList() : base() { Add(new PersonName(Willa, Cather)); Add(new PersonName(Isak, Dinesen)); Add(new PersonName(Victor, Hugo)); Add(new PersonName(Jules, Verne)); } } public class PersonName { private string firstName; private string lastName; public PersonName(string first, string last) { this.firstName first; this.lastName last; } public string FirstName { get { return firstName; } set { firstName value; } } public string LastName { get { return lastName; } set { lastName value; } } } 可以根据使数据可用于 XAML 中的绑定 中的说明按照与其他公共语言运行时 (CLR) 对象相同的方式使集合可用于绑定。 例如可以在 XAML 中实例化该集合并将该集合指定为一个资源如下所示 Window xmlnshttp://schemas.microsoft.com/winfx/2006/xaml/presentation xmlns:xhttp://schemas.microsoft.com/winfx/2006/xaml xmlns:cclr-namespace:SDKSample x:ClassSDKSample.Window1 Width400 Height280 TitleMultiBinding Sample Window.Resources c:NameList x:KeyNameListData/ ... /Window.Resources 然后可以绑定到该集合 ListBox Width200 ItemsSource{Binding Source{StaticResource NameListData}} ItemTemplate{StaticResource NameItemTemplate} IsSynchronizedWithCurrentItemTrue/ 此处没有显示 NameItemTemplate 的定义。 备注 集合中的对象必须满足 绑定源概述中所述的要求。 特别是如果使用 OneWay 或 TwoWay例如希望 UI 在源属性发生显著变化时进行更新则必须实现一个适当的“属性已更改”通知机制如 INotifyPropertyChanged 接口。 7、使用 XMLDataProvider 和 XPath 查询绑定到 XML 数据 此示例介绍如何使用 XmlDataProvider 绑定到 XML 数据。 使用 XmlDataProvider在应用程序中可通过数据绑定访问的基础数据可以是 XML 节点的任意树。 也就是说XmlDataProvider 提供一种将 XML 节点的任意树用作绑定源的简便方式。 示例 在以下示例中数据作为 XML 数据岛直接嵌入 Resources 部分。 XML 数据岛必须包装在 x:XData 标记中并始终具有一个单一根节点在本示例中根节点为 Inventory。 备注 XML 数据的根节点具有一个将 XML 命名空间设置为空字符串的 xmlns 属性。 将 XPath 查询应用到 XAML 页中内联的数据岛时需要此属性。 在此内联情况下XAML 以及数据岛会继承 System.Windows 命名空间。 因此需要将命名空间设置为空白以防止 XPath 查询被 System.Windows 命名空间限定而误导查询。 StackPanelxmlnshttp://schemas.microsoft.com/winfx/2006/xaml/presentationxmlns:xhttp://schemas.microsoft.com/winfx/2006/xamlBackgroundCornsilkStackPanel.ResourcesXmlDataProvider x:KeyInventoryData XPathInventory/Booksx:XDataInventory xmlnsBooksBook ISBN0-7356-0562-9 Stockin Number9TitleXML in Action/TitleSummaryXML Web Technology/Summary/BookBook ISBN0-7356-1370-2 Stockin Number8TitleProgramming Microsoft Windows With C#/TitleSummaryC# Programming using the .NET Framework/Summary/BookBook ISBN0-7356-1288-9 Stockout Number7TitleInside C#/TitleSummaryC# Language Programming/Summary/BookBook ISBN0-7356-1377-X Stockin Number5TitleIntroducing Microsoft .NET/TitleSummaryOverview of .NET Technology/Summary/BookBook ISBN0-7356-1448-2 Stockout Number4TitleMicrosoft C# Language Specifications/TitleSummaryThe C# language definition/Summary/Book/BooksCDsCD Stockin Number3TitleClassical Collection/TitleSummaryClassical Music/Summary/CDCD Stockout Number9TitleJazz Collection/TitleSummaryJazz Music/Summary/CD/CDs/Inventory/x:XData/XmlDataProvider/StackPanel.ResourcesTextBlock FontSize18 FontWeightBold Margin10HorizontalAlignmentCenterXML Data Source Sample/TextBlockListBoxWidth400 Height300 BackgroundHoneydewListBox.ItemsSourceBinding Source{StaticResource InventoryData}XPath*[Stockout] | *[Number8 or Number3]//ListBox.ItemsSource!--Alternatively, you can do the following. --!--ListBox Width400 Height300 BackgroundHoneydewItemsSource{Binding Source{StaticResource InventoryData},XPath*[Stock\\out\] | *[Number\8 or Number\3]}--ListBox.ItemTemplateDataTemplateTextBlock FontSize12 ForegroundRedTextBlock.TextBinding XPathTitle//TextBlock.Text/TextBlock/DataTemplate/ListBox.ItemTemplate/ListBox /StackPanel如此示例中所示若要使用属性语法创建相同的绑定声明必须对特殊字符进行正确转义。  运行此示例时ListBox 将显示以下项。 这些项为 Books 下所有元素的 Title其中 Stock 值为“out”Number 值为 3 或者大于或等于 8。 请注意没有返回任何 CD 项因为 XmlDataProvider 上设置的 XPath 值表示只应公开 Books 元素本质上是设置筛选器。 此示例显示书名因为 DataTemplate 中的 TextBlock 绑定的 XPath 设为“Title”。 如果希望显示属性值如 ISBN则应将 XPath 值设置为“ISBN”。 WPF 中的 XPath 属性使用 XmlNode.SelectNodes 方法处理。 可以修改 XPath 查询以获取不同的结果。 以下是上一示例中对绑定 ListBox 执行 XPath 查询的部分示例 XPathBook[1] 将返回第一个 Book 元素“XML in Action”。 请注意XPath 索引从 1 而不是从 0 开始。 XPathBook[*] 将返回带有任意属性的所有 Book 元素。 XPathBook[last()-1] 将返回第二个至最后一个 Book 元素“Introducing Microsoft .NET”。 XPath*[position()3] 将返回除前 3 个元素之外的所有 Book 元素。 当运行 XPath 查询时它将返回 XmlNode 或 XmlNode 列表。 XmlNode 是公共语言运行时 (CLR) 对象这意味着可以使用 Path 属性绑定到公共语言运行时 (CLR) 属性。 再以上述示例为例。 如果该示例的其余部分保持不变将 TextBlock 绑定更改为下面的值则将在 ListBox 中看到返回的 XmlNode 的名称。 在此情况下所有返回节点的名称为“Book”。 TextBlock FontSize12 ForegroundRedTextBlock.TextBinding PathName//TextBlock.Text /TextBlock在某些应用程序中将 XML 作为 XAML 页的源内的数据岛嵌入可能很不方便因为在编译时必须知道该数据的确切内容。 因此还支持从外部 XML 文件获取该数据如下面的示例所示 XmlDataProvider x:KeyBookData Sourcedata\bookdata.xml XPathBooks/如果 XML 数据驻留在远程 XML 文件中可以通过将适当的 URL 分配给 Source 属性来定义对该数据的访问如下所示 XmlDataProvider x:KeyBookData Sourcehttp://MyUrl XPathBooks/
http://www.zqtcl.cn/news/151433/

相关文章:

  • 一起做网站逛市场百度权重查询网站
  • 专业网站优化推广网站核查怎么抽查
  • 牡丹江站salong wordpress
  • 网站建设公司做网站要多少费用有哪些外国网站国内可以登录的
  • 天津建站平台网页制作免费的素材网站
  • 建设网站需要专业哪个企业提供电子商务网站建设外包
  • 公司网站建设及维护网站建设思维
  • 那个网站可以学做西餐17做网站广州沙河
  • 品牌网站建设哪里好京东网站建设案例
  • 亚马逊海外版网站深圳市工商注册信息查询网站
  • 新乐做网站优化网站上漂亮的甘特图是怎么做的
  • 新网站应该怎么做seo品牌推广方案思维导图
  • 想要网站导航推广页浅谈中兴电子商务网站建设
  • 免费引流在线推广成都网站优化费用
  • 老河口市网站佛山市点精网络科技有限公司
  • word模板免费网站seo引擎优化是做什么的
  • 办网站怎么赚钱鄠邑建站 网站建设
  • 宜春网站建设推广微信小程序开发
  • 巴南城乡建设网站免费网站建设软件大全
  • 湖南网站建设公公司没有自己的网站
  • 刚建设的网站如何推广网站恢复正常
  • 怎么做制作网站的教程永久免费空间免备案
  • 网站维护运营怎么做简单的手机网址大全
  • 网站建设规划设计公司排名使用模块化的网站
  • 南宁网站seo大概多少钱门户网站建设公司渠道
  • 如何建国际商城网站海门做网站公司
  • 做网站应该画什么图注册子公司流程及所需资料
  • 嵊州市建设银行网站怎么自己做游戏软件
  • 用模板快速建站中园建设银行网站
  • 网站建设罒金手指下拉壹陆韩国最新新闻消息