草庐IT

WPF-dataGrid

全部标签

WPF工控组态软件之管道和冷却风扇开发

WPF以其丰富灵活的控件样式设计,相较于WinForm而言,一直是工控组态软件的宠儿,本文以两个简单的小例子,简述如何通过WPF设计出表示水流的管道,和转动的冷却风扇。仅供学习分享使用,如有不足之处,还请指正。设计知识点关于本示例中,涉及的知识点,如下所示:自定义用户控件,用户可以根据业务需要自定义控件,将普通的控件进行组合,封装,以满足特定的功能,并达到复用的目的。WPF形状,动画,可以通过选择,移动,变形等相关功能,改变控件的呈现形状。依赖属性,WPF可以通过依赖属性进行数据的绑定,实现UI与业务逻辑的解耦。示例截图本示例主要实现了管道,和冷却扇,然后通过不同的旋转,移动并加以组合,如下所

WPF工控组态软件之管道和冷却风扇开发

WPF以其丰富灵活的控件样式设计,相较于WinForm而言,一直是工控组态软件的宠儿,本文以两个简单的小例子,简述如何通过WPF设计出表示水流的管道,和转动的冷却风扇。仅供学习分享使用,如有不足之处,还请指正。设计知识点关于本示例中,涉及的知识点,如下所示:自定义用户控件,用户可以根据业务需要自定义控件,将普通的控件进行组合,封装,以满足特定的功能,并达到复用的目的。WPF形状,动画,可以通过选择,移动,变形等相关功能,改变控件的呈现形状。依赖属性,WPF可以通过依赖属性进行数据的绑定,实现UI与业务逻辑的解耦。示例截图本示例主要实现了管道,和冷却扇,然后通过不同的旋转,移动并加以组合,如下所

WPF - ComboBox 和 ListBox 的 ItemsSource 自动绑定 enum 值集合

前言WPF的ComboBox控件等绑定enum值很繁琐,很让人头疼,网上也有提供了一些方法,基本是使用ObjectDataProvider方式和MarkupExtension方式,有没有办法绑定值为enum类型就自动加载所有枚举值选项,下面记录一种方法;实现方式主要通过附加属性,根据绑定的Selecter.SelectedItem属性,获取属性类型,再获取枚举值的集合了,下面是实现代码: 添加附加属性 ItemsControlHelper.EnumValuesToItemsSourceProperty(修改嵌套属性获取类型)publicclassItemsControlHelper{/////

WPF - ComboBox 和 ListBox 的 ItemsSource 自动绑定 enum 值集合

前言WPF的ComboBox控件等绑定enum值很繁琐,很让人头疼,网上也有提供了一些方法,基本是使用ObjectDataProvider方式和MarkupExtension方式,有没有办法绑定值为enum类型就自动加载所有枚举值选项,下面记录一种方法;实现方式主要通过附加属性,根据绑定的Selecter.SelectedItem属性,获取属性类型,再获取枚举值的集合了,下面是实现代码: 添加附加属性 ItemsControlHelper.EnumValuesToItemsSourceProperty(修改嵌套属性获取类型)publicclassItemsControlHelper{/////

WPF开发经验-实现自带触控键盘的TextBox

一引入项目有个新需求,当点击或触碰TextBox时,基于TextBox的相对位置,弹出一个自定义的Keyboard,如下图所示: 二KeyboardControl先实现一个自定义的KeyboardControl,它继承自Window。Xaml代码如下:"WpfApp1.KeyboardControl"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:local="clr-namespace:Wpf

WPF开发经验-实现自带触控键盘的TextBox

一引入项目有个新需求,当点击或触碰TextBox时,基于TextBox的相对位置,弹出一个自定义的Keyboard,如下图所示: 二KeyboardControl先实现一个自定义的KeyboardControl,它继承自Window。Xaml代码如下:"WpfApp1.KeyboardControl"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:local="clr-namespace:Wpf

WPF输入验证提示

WPF输入验证提示在写前端输入时,我们经常要对用户的输入进行验证,检查输入的合理性,当输入非法时,需要能提醒用户。比如下图,当输入不是IP格式的字符串时,会提示输入正确格式的IP。百度一圈得到的做法:前端样式在样式中判断,Property="Validation.HasError"Value="true",触发样试更改。后端测试使用的MVVM框架为Caliburn.MicrousingCaliburn.Micro;usingSystem;usingSystem.Collections.Generic;usingSystem.Collections.ObjectModel;usingSystem

WPF输入验证提示

WPF输入验证提示在写前端输入时,我们经常要对用户的输入进行验证,检查输入的合理性,当输入非法时,需要能提醒用户。比如下图,当输入不是IP格式的字符串时,会提示输入正确格式的IP。百度一圈得到的做法:前端样式在样式中判断,Property="Validation.HasError"Value="true",触发样试更改。后端测试使用的MVVM框架为Caliburn.MicrousingCaliburn.Micro;usingSystem;usingSystem.Collections.Generic;usingSystem.Collections.ObjectModel;usingSystem

WPF多页面切换的实现方法

摘要C/S端软件,左侧导航菜单+右侧页面切换的布局很常见。这篇文章介绍下使用ContentControl控件和TabControl控件如何实现基础的页面切换。一、使用ContentControl实现页面切换页面使用UserControl来实现。基于MVVM框架的思想,利用数据绑定机制,将控件集合绑定到ContentControl的数据源中。ViewModel中定义UIElement类型变量和OpenPageCommand触发命令,代码如下:publicclassMainViewModel:INotifyPropertyChanged{publiceventPropertyChangedEven

WPF多页面切换的实现方法

摘要C/S端软件,左侧导航菜单+右侧页面切换的布局很常见。这篇文章介绍下使用ContentControl控件和TabControl控件如何实现基础的页面切换。一、使用ContentControl实现页面切换页面使用UserControl来实现。基于MVVM框架的思想,利用数据绑定机制,将控件集合绑定到ContentControl的数据源中。ViewModel中定义UIElement类型变量和OpenPageCommand触发命令,代码如下:publicclassMainViewModel:INotifyPropertyChanged{publiceventPropertyChangedEven