草庐IT

WPF-dataGrid

全部标签

【愚公系列】2023年07月 WPF+上位机+工业互联 036-图形3D与事件(材质)

文章目录前言一、材质1.DiffuseMaterial2.SpecularMaterial3.EmissiveMaterial4.MaterialGroup前言在3D世界中,材质是指一种物体的表面质感和外观特征的属性。它定义了物体的颜色、纹理、光泽、透明度、反射率等视觉特征,使得物体看起来更加真实且具有质感。在三维建模软件中,用户可以选择不同的材质来为建模的物体添加不同的表面属性,从而实现更加逼真的渲染效果。常见的材质类型包括漫反射材质、镜面反射材质、玻璃材质、金属材质等。一、材质在WPF中,可以使用以下不同类型的材质:DiffuseMaterial:这是最常见的材质类型,表示一个物体表面的基

WPF使用TextBlock实现查找结果高亮显示

在应用开发过程中,经常遇到这样的需求:通过关键字查找数据,把带有关键字的数据显示出来,同时在结果中高亮显示关键字。在web开发中,只需在关键字上加一层标签,然后设置标签样式就可以轻松实现。在WPF中显示文本内容通常采用TextBlock控件,也可以采用类似的方式,通过内联流内容元素Run达到同样的效果:需要注意的是每个Run之间不要换行,如果换行的话,每个Run之间会有间隙,看起来像增加了空格。通过这种方式实现查找结果中高亮关键字,需要把查找结果拆分成三部分,然后绑定到Run元素的Text属性,或者在后台代码中使用TextBlock的Inlines属性添加Run元素textBlock1.Inl

WPF 数据验证

WPF提供了能与数据绑定系统紧密协作的验证功能。提供了两种方法用于捕获非法值:1、可在数据对象中引发错误。可以在设置属性时抛出异常,通常WPF会忽略所有在设置属性时抛出的异常,但可以进行配置,从而显示更有帮助的可视化指示。另一种选择是在自定义的数据类中实现INotifyDataErrorInfo或IDataErrorInfo接口,从而可得到指示错误的功能而不会抛出异常。2、可在绑定级别上定义验证。这种方法可获得使用相同验证的灵活性,而不必考虑使用的是哪个控件。更好的是,因为是在不同类中定义验证,可以很容易的在存储类似数据类型的多个绑定中重用验证。错误模板错误模板使用的是装饰层,装饰层是位于普通

WPF基础入门-Class5-WPF命令

WPF基础入门Class5-WPF命令1、xaml编写一个button,Command绑定一个命令Grid>ButtonWidth="100"Height="40"Command="{BindingShowCommand}">Button>Grid>2、编写一个model.csnamespaceWPF_Learn.Model{classmodel_csdn{publicmodel_csdn(){ShowCommand=newMyCommamd(show);} //注册命令,名字和xaml中一致publicMyCommamdShowCommand{get;set;}publicvoidshow

WPF基础入门-Class7-WPF-MVVN框架

WPF基础入门Class7-MVVN框架使用框架可以省掉如Class6中的ViewModelBase.cs的OnPropertyChanged,亦方便命令传参1、NuGet安装CommunityToolkit.Mvvm(原Mircrosoft.Toolkit.Mvvm)也可以安装MVVMLight等其他集成库2、显示页面:Grid>StackPanel>TextBoxx:Name="input"Text="{BindingName}">TextBox>TextBoxText="{BindingTitle}">TextBox>ButtonCommand="{BindingShowCommand}

WPF-利用装饰器实现控件的自由拖动

  在项目中经常会遇到类似如下要求的需求,创建允许自由拖动的控件,这样的需求可以使用WPF的装饰器Adorner来实现。 一、什么是装饰器?装饰器是一种特殊类型的FrameworkElement,装饰器始终呈现在被装饰元素的顶部,用于向用户提供可视化提示。装饰器可以在不改变原有控件结构的基础上,将功能点增加到元素中或元素上提供视觉效果等,如WPF的光标效果,焦点效果等都是通过装饰器来实现的。装饰器是一个始终位于装饰元素或装饰元素集合顶部的呈现图层,其呈现独立与它所绑定的UIElement,WPF中的装饰器是在一个单独的曾AnornerLayer上进行绘制的,该层位于普通控件元素之上,而且允许多

WPF 触发器Trigger

Trigger:当某些条件满足时会触发一个行为。一、触发器的类型数据变化触发型:Trigger/DataTrigger多条件触发型:MultiTrigger/MultiDataTrigger事件触发型:EventTrigger二、TriggerTrigger:Property用来指明关注目标控件的哪个属性,Value则是触发条件。Setter:一旦触发条件被满足,这组Setter的“属性-值”就会被应用,触发条件不再满足后,各属性值会被还原。StyleTargetType="CheckBox">Style.Triggers>TriggerProperty="IsChecked"Value="t

WPF 入门笔记 - 08 - 动画

感谢大家对上篇博文的支持💕回到正题,今天和大家分享下学习动画过程中的内容。动画对我来讲还是蛮新鲜的,大家知道在接触WPF之前我只用过Winform,而Winform中并没有动画的概念,当想要实现某些“动画”效果时,我们必须从头构建自己的动画系统,正如微软文档中对动画的介绍,在Winform中做动画我们一般会结合计时器和一些绘图逻辑来实现我们想要的“动画”。比如,我想让一个矩形逐渐从视野中消失,大概率会按照以下步骤来完成这项工作:创建一个计时器设定适当的Interval让计时器检查经历了多长时间在每次进入计时器时,根据时间计算矩形的透明度然后更新这个矩形虽然这种方案看上去不难,但是将它应用到窗体

WPF CommunityToolkit.Mvvm

文章目录前言ToolkitNuget安装简单使用SetProperty,通知更新RealyCommandCanExecute新功能,代码生成器ObservablePropertyNotifyCanExecuteChangedForRelayCommand其他功能对应关系NotifyPropertyChangedFor前言CommunityToolkit.Mvvm(以下简称Toolkit)是WPF最有名的两个框架,一个是Prism,另一个就是Toolkit。Prism可以看我的Prism详解WPFPrims框架详解ToolkitToolkit官方文档用CommunityToolkit.Mvvm加

WPF的数据绑定

文章目录前言一、WPF数据绑定的概要1.数据绑定涉及到两个方面:2.对于绑定源,在WPF可以是以下四种:二、绑定的模式1.根据数据流的方向,WPF中的数据绑定分为以下四种:三.绑定目标值影响绑定源值条件1.UpdateSourceTrigger属性是确定触发源更新的原因。2.示例四、数据提供程序1.XmlDataProvider:2.ObjectDataProvider:五、类型转换与数据校验1.IValueConverter接口2.ValidationRule类六、绑定集合对象1.ICollectionView接口2.ObservableCollection类3.WPFMVVM概要前言一、W