1

WPF datagrid 列按钮使用

原文:WPF中使用DataGrid时操作列按钮问题 <DataGrid x:Name="datagrid" AutoGenerateColumns="False" ScrollViewer.HorizontalScrollBarVisibility="Hidden" SizeChanged="dat ...

Fernando_Y 发布于 2019-08-15 11:35 评论(0)阅读(511)
1

WPF使用FlowDocument实现图文混排

代码: <RichTextBox CaretBrush="#fff" Background="Transparent" BorderThickness="0"> <FlowDocument FontSize="16" Foreground="#fff"> <Paragraph LineHeight= ...

秋荷雨翔 发布于 2019-08-14 18:50 评论(0)阅读(317)
9

基于 WPF 模块化架构下的本地化设计实践

背景描述 最近接到一个需求,就是要求我们的 WPF 客户端具备本地化功能,实现中英文多语言界面。刚开始接到这个需求,其实我内心是拒绝的的,但是没办法,需求是永无止境的。所以只能想办法解决这个问题。 首先有必要说一下我们的系统架构。我们的系统是基于 Prism 来进行设计的,所以每个业务模块之间都是相 ...

hippieZhou 发布于 2019-08-13 09:13 评论(11)阅读(1115)
2

选择图像根据坐标得到图像。头像裁剪器

选择图像根据坐标得到图像。 环境 Visual Studio 2019,dotNet Framework 4.0 SDK 支持Windows XP,Windows Win7、8、10 源码地址 效果 ...

驚鏵 发布于 2019-08-09 18:07 评论(0)阅读(200)
45

C#开发可播放摄像头及任意格式视频的播放器

前言 本文主要讲述,在WPF中,借助Vlc.DotNet调用VLC类库,实现视频播功能,下面我们先来做开发前的准备工作。 准备工作 首先,我们创建一个项目WpfVLC,然后,进入Neget搜索Vlc.DotNet,得到如下界面: 我们选择Vlc.DotNet.Wpf,点击安装(这里我已经安装了,所以 ...

kiba518 发布于 2019-08-07 12:01 评论(35)阅读(4268)
3

WPF滑块控件(Slider)的自定义样式

前言 每次开发滑块控件的样式都要花很久去读样式代码,感觉有点记不牢,所以特此备忘。 自定义滑块样式 首先创建项目,添加Slider控件。 然后获取Slider的Window样式,如下图操作。 然后弹出界面如下.我们点击确定。 点击确定后,我们的页面的Resources中,增加了一系列样式代码,而滑块 ...

kiba518 发布于 2019-08-01 10:12 评论(7)阅读(1299)
2

【WPF】大量Canvas转换为本地图片遇到的问题

原文地址:https://www.cnblogs.com/younShieh/p/11279420.html   前文   项目中遇到一个难题,需要将上百个没有显示出来的Canvas存储为图片保存在本地。   操作步骤应该是将Canvas转换成位图, ...

从南到北ss 发布于 2019-07-31 22:04 评论(6)阅读(403)
1

XAML属性和事件

1、元素属性 XAML是一种声明性语言,XAML编译器会为每一个标签创建一个与之对应的对象。对象创建出来之后要对它的属性进行必要的初始化之后才有使用意义。因为XAML语言不能写程序运行逻辑,所以一份XAML文档除了使用标签声明对象,另外一个功能就是初始化对象的属性了。在XAML中为对象属性赋值共有两 ...

BigBosscyb 发布于 2019-07-31 14:55 评论(1)阅读(199)
0

分析一个简单的WPF程序

1、新建WPF项目 使用Visual Studio 代码编辑器点击新建项目,选择 WPF应用后点击下一步: 在新窗口中我们填写项目名称、选择项目位置后点击创建就完成了WPF项目的创建。 2、WPF项目分支介绍 Properties分支:里面的主要内容是程序要用到的一些资源和配置信息。 引用(Refe ...

BigBosscyb 发布于 2019-07-31 13:58 评论(0)阅读(321)
2

仿制shazzam的简单功能,将hlsl转换为WPF中的ShaderEffect

(此文章只是在对WPF的Effect产生兴趣才稍微研究了一点后面的知识;需要了解更多可参考https://archive.codeplex.com/?p=shazzam的源代码以及WPF基础知识) 1.之前一直使用blend里自带的几个特效,突然有一天比较好奇这些特效是怎么来的。 然后就听说了sha ...

lenkaset 发布于 2019-07-27 14:58 评论(2)阅读(175)
6

[WPF 自定义控件]自定义Expander

1. 前言 上一篇文章介绍了使用Resizer实现Expander简单的动画效果,运行效果也还好,不过只有展开/折叠而缺少了淡入/淡出的动画(毕竟Resizer模仿Expander只是附带的功能)。这篇继续Measure的话题,自定义了一个带有动画的ExtendedExpander。 2. Exte ...

dino.c 发布于 2019-07-24 22:13 评论(2)阅读(572)
12

WPF依赖属性的正确学习方法

前言 我在学习WPF的早期,对依赖属性理解一直都非常的不到位,其恶果就是,我每次在写依赖属性的时候,需要翻过去的代码来复制黏贴。 相信很多朋友有着和我相同的经历,所以这篇文章希望能帮助到那些刚刚开始学依赖属性的朋友。 那些[讨厌]的依赖属性的讲解文章 初学者肯定会面临一件事,就是百度,谷歌,或者MS ...

kiba518 发布于 2019-07-24 09:13 评论(5)阅读(755)
0

在线程中显示一个窗口(多个UI线程)

多数耗时操作可以异步执行,推荐async/await。 但和UI相关的部分仅能在UI线程执行,这时UI线程的耗时操作,导致界面卡死,不够友好。 我们可以创建一个单独的UI线程显示一个正在加载的窗口,可以在窗口显示一些动画之类的。 如果是WinForms那么很容易做到。 WPF没有提供这样简单的方式, ...

玩命夜狼 发布于 2019-07-20 00:54 评论(4)阅读(393)
5

[WPF 自定义控件]了解WPF的布局过程,并利用Measure为Expander添加动画

1. 前言 这篇文章介绍WPF UI元素的两步布局过程,并且通过Resizer控件介绍只使用Measure可以实现些什么内容。 我不建议初学者做太多动画的工作,但合适的动画可以引导用户视线,提升用户体验。例如上图的这种动画,这种动画挺常见的,在内容的高度改变时动态地改变自身的高度,除了好看以外,对用 ...

dino.c 发布于 2019-07-17 20:47 评论(13)阅读(961)
0

WPF TextBox绑定Int类型的属性

TextBox双向绑定int属性,清空输入框时Setter方法未触发。 我的解决方案: 1、属性置为int?; 2、xmlns:sys="clr-namespace:System;assembly=mscorlib" 3、Text="{Binding Number,Mode=TwoWay,Targe ...

bobyuanyuan 发布于 2019-07-17 15:09 评论(0)阅读(355)
4

[WPF 自定义控件]好用的VisualTreeExtensions

1. 前言 A long time ago in a galaxy far, far away....微软在Silverlight Toolkit里提供了一个好用的VisualTreeExtensions,里面提供了一些查找VisualTree的扩展方法。在那个时候(2009年),VisualTre ...

dino.c 发布于 2019-07-11 09:09 评论(6)阅读(632)
0

WPF与WinForm开发有什么区别?

转载自https://www.cnblogs.com/Joetao/articles/2547344.html WPF开发于WinForm之后,从技术发展的角度,WPF比WinForm先进是不容置疑的。我觉得WPF相比于WinForm有下面的一些较好的特性: 解决Window Handle问题 在W ...

zzx_bky 发布于 2019-07-10 13:54 评论(0)阅读(709)
0

WPF中ComboBox控件绑定键值对操作

WPF中下拉框将键值对作为其数据源的具体操作。本实例以枚举类型以及枚举特性描述字符串生成键值对来进行。 namespace ViewC { /// <summary> /// View.xaml 的交互逻辑 /// </summary> public partial class View : Win ...

VueDi 发布于 2019-07-09 20:39 评论(0)阅读(240)
1

ComboBox过滤

在View中完成数据筛选,无需改变数据源的内容,这样就不必担心在其它地方也使用这个数据源。 从路由事件 TextBoxBase.TextChanged 中获取输入的文本,并设置视图的过滤器就可以了。 CollectionViewSource.GetDefaultView 方法是返回一个 IColle ...

玩命夜狼 发布于 2019-07-08 18:58 评论(0)阅读(188)
1

TreeView虚拟化跳转

使用ItemContainerGenerator.ContainerFromItem方法可以获取对应数据的UIElement 。 但是如果使用了虚拟化技术,超出可见区域的UIElement就获取不到了。 参考微软的文档《如何:在 TreeView 中查找 TreeViewItem》,去掉一些不必要的 ...

玩命夜狼 发布于 2019-07-02 20:42 评论(0)阅读(243)