![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
WPF
小小的熊OnlyOne
这个作者很懒,什么都没留下…
展开
-
WPF 属性多重绑定
WPF 属性多重绑定原创 2022-08-17 13:45:34 · 652 阅读 · 0 评论 -
WPF 测量字符串显示大小
MeasureString原创 2022-06-23 15:41:27 · 408 阅读 · 0 评论 -
WPF 静态资源转换器
1、使用 <Window.Resources> <Func:StringToUriConverter x:Key="StringToUriConverter"></Func:StringToUriConverter> </Window.Resources><Hyperlink NavigateUri="{Binding Source={StaticResource NavigateUri}, Convert...原创 2022-05-07 18:20:52 · 582 阅读 · 0 评论 -
C#-Action
最近学到一个新的c#知识点--Action,在这里记录一下。Action是系统内置(或者说预定义)的一个委托类型,它可以指向一个没有返回值且没有参数的方法。通过ctrl+左键可以看到Action是这样定义的:public delegate void Action();上面还有一句描述://// 摘要:// 封装一个方法,该方法不具有参数且不返回值。简单来说,有了Action我们在需要无返回值无参数的委托类型时就不用再自己手动声明了,可以直接使用Action,比...转载 2021-08-26 15:35:02 · 16383 阅读 · 1 评论 -
C#-Func<>
与C#-Action十分相似,Func<>也是c#内置的委托类型,不同的是,Func<>只能用来引用具有返回值的方法,也就是说,在使用它时,至少需要在尖括号内指定一种类型,当仅指定一种类型时,表示引用具有返回值但没有参数的方法,当指定多种类型时,其中最后一个类型表示返回值类型,前面的表示所引用方法的参数列表的类型。有一下两个简单的例子:指定一个类型时static void Main(string[] args) { Fun...转载 2021-08-26 14:50:20 · 729 阅读 · 0 评论 -
C#获取环境变量
Environment.GetEnvironmentVariable("变量名")原创 2021-07-02 15:40:12 · 844 阅读 · 0 评论 -
WPF中Popup等弹窗的位置不对(偏左或者偏右)
1.情况如图: 正常情况: 部分特殊情况: 在一般的电脑都能正确显示,就是第一种情况,同样的代码为什么在不同的电脑就会显示不同的位置呢,原来Windows为了满足不同需求的用户,左撇子和右撇子,就会显示不同的情况,在显示异常的电脑中,在运行中输入Table 如果出现下图中的内容: 就是那个Table PC settings中的设置导致的,点击它,然后进入other,就可以看到 有Right-hande...转载 2021-06-22 15:31:28 · 1190 阅读 · 0 评论 -
WPF 获取进程启动到当前现在的时间
从应用程序线程创建现在的时间可以通过 Process 类的 StartTime 属性获取,也就是其实这个方法不局限 WPF 可用,任何 dotnet 应用都能此方法通过 Process.GetCurrentProcess().StartTime 可以拿到进程启动时间,而通过 DateTime.Now 可以获取当前的时间使用下面代码可以知道进程启动到现在的秒数(DateTime.Now - Process.GetCurrentProcess().StartTime).TotalSeconds.转载 2021-06-17 16:16:54 · 361 阅读 · 0 评论 -
WPF 如何缓解大量控件加载缓慢的问题
最近有一个项目需要加载大量的控件,导致系统出现卡顿问题,经过几天的努力,终于搞定了,写一下备忘。 解决方案是首次加载时只显示可见区域控件,之后使用辅助线程进行分批加载,将分批加载的线程优先级别设置为空闲时进行,这样在用户操作时就不会出现因加载线程导致的卡顿现象了。1Dispatcher.Invoke(newAction(()=>{2//分批加载控件的方法3}),System.Windows.Threading.DispatcherPriority.ApplicationIdle...转载 2021-06-17 11:32:43 · 3343 阅读 · 0 评论 -
MVVM框架下 WPF隐藏DataGrid一列
最近的一个项目,需要在部分用户登录的时候,隐藏DataGrid中的一列,但是常规的绑定不好使,在下面举个例子。XAML部分代码<Window x:Class="DataGridColumn.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" .转载 2021-05-07 14:15:01 · 1244 阅读 · 2 评论 -
WPF 画一个空心圆
<Path Fill="Blue" Width="61" Grid.Column="13"> <Path.Data> <GeometryGroup> <!--Center为圆心的坐标,RadiusX、RadiusY分别为X、Y两轴的半径-->...原创 2020-11-05 16:31:41 · 1134 阅读 · 0 评论 -
WPF ListBox响应鼠标滚轮的2种方法
1.代码方式public static T FindVisualChild<T>(DependencyObject obj) where T : DependencyObject { if (obj != null) { for (int i = 0; i < VisualTreeHelper.GetChildrenCount(obj); i++) {原创 2020-07-24 16:12:59 · 1068 阅读 · 0 评论 -
WPF拖放功能实现
写在前面:本文为即兴而作,因此难免有疏漏和词不达意的地方。在这里,非常期望您提供评论,分享您的想法和建议。 这是一篇介绍如何在WPF中实现拖放功能的短文。 首先要读者清楚的一件事情是:拖放主要分为拖放源和拖放目标两个组成。拖放源和拖放目标各自拥有不同的事件。软件开发人员需要在适当的事件中完成相应功能。 试想拖放是如何操作的:用户选中一个界面元素,并在鼠标左键按下的情况下移动鼠标,最后,在到达拖放目标时松开鼠标左键,从而完成数据拖放的全过程。从程序编写的角度来看,用户需要在左键选中项目并按下转载 2020-06-18 15:35:46 · 589 阅读 · 0 评论 -
VS2017创建类库项目后添加不了WPF资源字典
第一步: 先找到你需要添加的库类工程文件,位置如下: 第二步: 使用记事本文件打开,找到图片的位置,把三行代码粘贴进去,保存文件。重新打开项目: 三行代码如下: <ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04...转载 2019-11-12 10:12:15 · 821 阅读 · 0 评论 -
WPF:自定义行为
1、行为什么时候才会使用? 行为在一个操作会频繁调用时,才会定义。2、依赖库System.Windows.Interactivity、Microsoft.Expression.Interactions3、定义 /// <summary> /// 默认Full键盘,使用Number键盘需要把Tag设置为Number /// //...原创 2019-11-08 10:40:29 · 350 阅读 · 0 评论 -
VS2015 WPF本地化
1.首先需要完成你的界面编写,一但增加或减少控件就需要重新一下流程。2.需要工具LocBaml.exe,放在你项目的生成文件下。下载地址--https://download.csdn.net/download/xionglifei2014/103973673.流程开始: 3.1修改项目的.csproj文件 在第一个<PropertyGroup>里添加<UICulture...原创 2018-05-07 13:33:48 · 937 阅读 · 2 评论 -
Microsoft.Common.targets(2401,5): error MSB6006: “LC.exe”已退出,代码为 -1
最近一个c#工程,之前编译正常。后重装系统,安装DevExpress后,编译的过程中,什么错误也没提示,只提示"4>C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(2401,5): error MSB6006: “LC.exe”已退出,代码为 -1。",真好的诡异,后来想到把工程下licenses....转载 2018-06-21 15:10:55 · 4711 阅读 · 1 评论 -
C#汉字转拼音(支持多音字)
C#汉字转拼音(支持多音字)阅读目录首先在nuget引用对应的包简单的demo汉字转拼音类封装源码分享 之前由于项目需要,中间需要一个汉字转拼音和首拼的功能来做查询,感觉这种功能基本已经成熟化了,于是查找了相关的代码,首先引入眼帘的是下面两篇文章 1.C# 汉字转拼音(支持GB2312字符集中所有汉字) 2.【干货】JS版汉字与拼音互转终极方案,附简单的JS拼音输入法 感谢两位...转载 2018-06-14 10:07:27 · 3076 阅读 · 1 评论 -
c#录音和放音,超简单!不用DirectX
最近在做android与C#录音并互相通信的小东西。但是卡在C#录音这儿了。找了好久,说的都是DirectX,可是我总是安装不上,这才找到了这个简单的录音方法。当然,如果你想要录得好并且处理音频,那还是用用DirectX吧!原文:http://www.cnblogs.com/zrx401558287/archive/2008/11/28/1343160.html using System.Run...转载 2018-06-15 15:18:58 · 2552 阅读 · 3 评论 -
WPF插件不能添加WPF窗体
刚开始用插件式开发练习项目时添加新项时却不能添加WPF窗体,只有一个用户控件能添加。后来发现是添加新建项目时添加的是类库就不行,改成添加WPF应用程序时可以正常添加。 但这不是一个好的解决方案,不符合插件式开发(需要的是dll)添加WPF应用程序Visual Studio会把它编译成exe,类库则编译成dll。 好的解决方案是添加一个Visual Studio模板:1、新建一个WPF应用程序 你可...转载 2018-06-23 13:05:59 · 1623 阅读 · 0 评论 -
WPF 功能实现
1.UI异步Application.Current.Dispatcher.BeginInvoke(new Action(() => StopPlayFile()));原创 2018-06-26 16:34:51 · 363 阅读 · 0 评论 -
WPF -- 设置 DatePicker 的日期时间显示格式
<Style TargetType="DatePickerTextBox"> <Setter Property="Control.Template"> <Setter.Value> <ControlTemplate> <TextBox Text="转载 2018-06-20 11:30:24 · 14194 阅读 · 0 评论 -
【C#】关闭 Window 之后,无法设置 Visibility,也无法调用 Show、ShowDialogor 或 WindowInteropHelper.EnsureHandle
问题:在做WPF项目时,点击一个按钮弹出一个自定义的窗体,然后点击X关闭该窗体,然后再点击按钮想弹出该窗体时,报错:关闭 Window 之后,无法设置 Visibility,也无法调用 Show、ShowDialogor 或 WindowInteropHelper.EnsureHandle。 解决办法:需要重写它的OnClosing()方法。protected override ...转载 2018-07-16 17:30:00 · 3188 阅读 · 0 评论 -
WPF下OpenFileDialog实现同一个对话框里打开文件或文件目录
1.WPF方式Microsoft.Win32.OpenFileDialog openFileDialog = new Microsoft.Win32.OpenFileDialog(); openFileDialog.Title = "选择文件"; openFileDialog.Filter = "所有文件(*.*)|*.*"; ...转载 2018-07-11 16:51:16 · 5338 阅读 · 0 评论 -
WPF Windows背景透明其中的文字保持不透明
实现效果如图: 实现代码:<Window x:Class="Gvitech.Application.WPF.UI.FunFacility.WindowEquipmentRecord" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.m...转载 2018-07-13 17:14:59 · 936 阅读 · 0 评论 -
WPF制作子窗体的弹出动画效果
创建一个WPF应用程序WpfApplication1,新建个窗体DialogWin<Window x:Class="WpfApplication1.DialogWin" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft...转载 2018-08-03 17:31:28 · 3200 阅读 · 0 评论 -
C# 添加水印图片、文字
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Drawing;using System.Drawing.Imaging;using System.Drawing.Drawing2D;...原创 2018-07-27 16:50:35 · 5083 阅读 · 1 评论 -
WPF 获得DataTemplate中的控件
1、WPF 获得DataTemplate中的控件, 下面这个示例是从ListBox中获得ListBoxItem模板的控件信息。前台代码: <!--获得模板中的控件--> <ListBox Margin="12,32,0,0" IsSynchronizedWithCurrentItem="True" ItemsSource="{Binding}...转载 2018-09-10 09:40:56 · 3012 阅读 · 0 评论 -
WPF 图片格式转换
//FileStream imageStreamSource = File.OpenRead(srcPath); FileStream imageStreamSource = new FileStream(srcPath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite); ...原创 2018-09-10 13:20:13 · 1218 阅读 · 0 评论 -
WPF加载程序集中字符串资源
WPF资源WPF资源使用其实的也是resources格式嵌入资源,默认的资源名称为"应用程序名.g.resources",不过WPF资源使用的pack URI来访问资源。添加图像资源 在解决方案资源管理器中包含一个图像资源(如data\img.png)的时候,默认是输出为资源文件的(生成操作=Resource),编译的时候作为资源编译到程序集中;当在img.png的属性页中把"生成...转载 2018-10-16 14:10:43 · 473 阅读 · 0 评论 -
WPF 自定义单选框CheckBox边框的大小,利用Viewbox让钩随边框大小而自动伸缩功能,利用IsChecked选中后可是打钩。
源代码<Style x:Key="CheckBoxStyle" TargetType="{x:Type CheckBox}"> <Setter Property="SnapsToDevicePixels" Value="true" /> <Setter Property="OverridesDefaultStyl转载 2018-12-05 14:16:27 · 5598 阅读 · 0 评论 -
为WPF和Silverlight的Grid添加边框线
为WPF和Silverlight的Grid添加边框线原文:https://www.cnblogs.com/chenxizhang/archive/2011/09/22/2185414.htmlGrid是WPF和Silverlight中的一个重要的布局元素,其他的布局元素还有StackPanel, Canvas, Border等等。从字面上说,Grid是一个表格的意思,它的使用也确实很方便,...转载 2018-12-05 15:01:52 · 265 阅读 · 0 评论 -
WPF性能优化经验总结
原文地址:https://www.cnblogs.com/chiniao/archive/2010/08/09/1795499.htmlWPF性能优化一、Rendering Tier1. 根据硬件配置的不同,WPF采用不同的Rendering Tier做渲染。下列情况请特别注意,因为在这些情况下,即使是处于Rendering Tier 2的情况下也不会硬件加速。(不全,其余请查阅SDK)...转载 2018-12-14 10:37:26 · 2996 阅读 · 0 评论 -
WPF进阶之接口(2):IDisposable,ICollectionView
源码地址:https://www.xuebuyuan.com/892590.html废话不多说,进入正题,先来说说IDisposable,看例子(来自MSDN):using System;using System.ComponentModel;// 下面的例子将展示一个实施了IDisposable接口和Dispose方法的类public class DisposeExample{...转载 2018-12-14 10:39:05 · 792 阅读 · 0 评论 -
VisualStudio2015使用C#.NET开发IOS程序时进行真机测试的设置参考
原文地址:https://www.cnblogs.com/sun51586/p/5450223.htmlVS2015+Xamarin使用C#.NET开发跨平台APP已经完全可行了,对了WP和UWP程序,都是MS的,一定没有问题。而对于ANDROID则是直接可以在VS中进行开发、部署到模拟器和真机,非常简单。而对于IOS程序,如果使用模拟器,也是比较容易,只要把VS和MAC+Xamari...转载 2018-12-14 10:41:43 · 1470 阅读 · 0 评论 -
WPF下取得控件或窗体的句柄
窗体: IntPtr hwnd = new WindowInteropHelper(this).Handle;控件: IntPtr hwnd = ((HwndSource)PresentationSource.FromVisual(uielement)).Handle;句柄的取得不要在构造 函数中取得,此时的vitual还没有产生,在Loaded中 就可以了...转载 2018-12-14 10:52:40 · 1269 阅读 · 0 评论 -
WPF控件(Control类:颜色与字体)
WPF控件分类:内容控件 标题内容控件 文本控件 列表控件 基于范围的控件 日期控件控件类控件是与用户交互的元素。控件可以获得焦点,能接受键盘或鼠标的输入。所有控件的基类是System.Windows.Control类,这类包括一些基本功能:对齐 tab序列 背景、前景、边界 文本内容的字体背景和前景刷子控件包括两个属性Background和Foregrou...转载 2018-12-14 10:54:08 · 2485 阅读 · 0 评论 -
WPF Clip属性
原文:https://blog.csdn.net/feitiankoulan/article/details/25199639 WPF 中FrameworkElement对象有一属性Clip,定义为区域剪裁,在未给定Clip属性值前,代码如: <Image Name="image1" Source="/百叶窗;component/Images/图片%20%282%29...转载 2018-12-14 10:55:29 · 2030 阅读 · 0 评论 -
WPF中comboBox组件如何绑定里面有Description的枚举
原文:https://blog.csdn.net/qq_31298129/article/details/53404983 先贴上自己的枚举 用的是mvvm框架 首先在view的ComboBox控件里面添加 <ComboBox x:Name="comboBox" ItemsSource="{Binding Path=Genders}" Disp...转载 2018-12-14 10:58:15 · 1175 阅读 · 1 评论 -
WPF DatePicker默认显示当前日期
原文地址:http://www.cnblogs.com/xcsn/p/4678382.htmlWPF的日历选择控件默认为当前日期,共有两种方法,一种静态,一种动态。静态的当然写在DatePicker控件的属性里了,动态的写在对应的cs文件里,具体请看下面。 1.方法一: myDatePicker.Text = DateTime.Today.ToLongDateStrin...转载 2018-12-14 11:00:04 · 1453 阅读 · 0 评论