首页 > TAG信息列表 > Wpf

WPF dotnet 6 开启 PM v2 的 DPI 感知 导致触摸线程访问 UI 属性抛异常

本文记录一个 WPF 在 dotnet 6 的一个已知问题,且此问题我已修复提交给官方仓库。这是一个只有在 dotnet 6 框架下,非 dotnet 5 也非 .NET Core 3.1 也非 .NET Framework 的问题,要求开启 DPI 感觉等级为 PerMonitorV2 的特性,在带触摸屏上的应用,应用运行过程中,切换屏幕的 DPI 之后,触

WPF 全屏窗口将让 Chrome 97 视频停止播放

无论是使用 WPF 全屏窗口,还是高性能全屏透明窗口,都会在 Chrome 97 以及使用 chromium 对应版本内核的应用的视频停止播放。这是 chromium 的一个优化,因为 chromium 认为,如果有全屏窗口盖在上面,自然此时停止播放视频可以节省资源。然而 chromium 却没有考虑到,有很多会议的应用,虽然

WPF中无法绑定PasswordBox的Password问题

由于PasswordBox的Password不是依赖属性,所以无法对其进行绑定。 这是需要通过添加附加属性,在附加属性中通过PasswordBox中可以用的依赖属性关联,实现Password绑定。 依赖属性: -----MonitorPassword:关联PasswordBox中的PasswordChange事件。当PasswordChange事件发生时,修改AttachPas

WPF如何使用IconFont和SVG

SVG 新建WPF类库(假设类库名称叫Asserts),用于存放整个应用程序使用的SVG图片,便于管理。 将SVG图片复制到WPF类库中的文件夹下面。(SVG比较多的时候,建议使用文件夹分门别类便于浏览和管理) 设置SVG的文件属性,生成操作为资源,不复制到输出目录 需要使用SVG的程序集引用Asserts,并下

【WPF & VTK】 C# 如何关闭vtkOutputWindow

在C#/WPF中使用vtk,可能会出行如下所示的窗口vtkOoutputWindow  关闭方法为: /// <summary> /// 将vtk输出信息重定向到文件中 /// </summary> private void RedirectVtkOutput() { var output = new vtkFileOutputWindow()

WPF DataTomplate中Command无效

问题描述:在DataGrid 中DataTomplate中添加一个Button,Button添加Command,但是Command未生效。 问题原因:ItemTemplate的DataContext指代不明,需要改为父类的DataContext。 解决方法:使用RelativeSource关键字,手动指定DataComtext和Command。 <!--Command 调用无效--> <Button Width="4

WPF 读写文件

1.读文件 1 StreamReader sr = new StreamReader(@"D:\JointIn.txt"); 2 string sLine = ""; 3 while(!sr.EndOfStream) 4 { 5 sLine += sr.ReadLine(); 6 } 7 Console.WriteLine(sLine); 8 sr.Close(); 2.写文件 1 StreamWriter sw = new StreamW

wpf 上传文件带进度条

在网上找了好久,才找到一位俄罗斯大神写的文章。 遇到超大文件的话还是会报异常。   服务端采用webapi [Authorize] [HttpPost] public async Task<IActionResult> Post(IFormFile file) { var content = new MultipartFormDataContent(); var fileContent = new StreamContent

【WPF】更改WPF桌面应用程序的 启动窗口(StartupUri或Startup)

WPF 更改StartupUri方式 StartupUri指定WPF应用程序启动窗口,默认为MainWindow窗口。 修改方式:(1)直接修改StartupUri属性,例如:StartupUri="TestWindow.xam“" 在login项目的根目录下StartupUri="Views/LoginView.xaml"  在子文件夹下     (2)删掉StartupUri属性,添加Startup事件,例

WPF 实现文本框textbox文字提示

在Template中添加一个textblock用于提示文本的显示,Visibility="Collapsed" 同时添加一个触发器,当textbox的text没有内容时,textblock的Visibility="Visible",显示出来 <Style x:Key="TextBoxPlaceHolder" TargetType="{x:Type TextBox}"> <Sette

【WPF】SecureString类型 用于密码框,密码等

也许很多人都是第一次知道还有SecureString这样一个类型,我也不例外。SecureString并不是一个常用的类型,但在一些拥有特殊需求的额场合,它就会有很大的作用。顾名思义,SecureString意为安全的字符串,它被设计用来保存一些机密的字符串,完成传统字符串所不能做到的工作。 (1)传统字符串以

【WPF】wpf怎么绑定多个值,多个控件 绑定多个CommandParameter 命令参数

最近有不少wpf新手问wpf的命令怎么绑定多个控件,很多人为此绞尽脑汁,网上的答案找了也没找到靠谱的,其实用MultiBinding就可以了。从.net 3.0版本开始,就支持MultiBinding 关于MultiBinding的说明: https://docs.microsoft.com/zh-cn/dotnet/api/system.windows.data.multibinding?redi

【WPF】Toolkit.Mvvm 、MvvmLight、Prism8.0比较

MvvmLight:已经过时,已经被Toolkit.Mvvm取代。 前言 在Wpf下最常使用的就是Mvvm模式了,有自己造轮子构建Mvvm框架的,也有使用现成的开源项目,我之前一直使用的是轻量级的MvvmLight了,这个框架还是非常不错的,使用也简单,不占用太大空间,其中最喜欢的莫过于全局Messenger了,可谓是神器。最近

WPF的Decorator 、Adorner和AdornerDecorator

Decorator 和 Adorner   它们都有“装饰品”的意思。   Decorator类负责包装某个UI元素,以提供额外的行为。它有一个类型为UIElement的Child属性,其中含有待包装的内容。Decorator可被用于添加简单的视觉装饰,例如边界(Border),或者更复杂的行为,例如ViewBox,AdornerDecorator,或是In

WPF标题栏自定义

1、废话不多说直接上代码 <Window.Resources> <Style x:Key="btnTitleMaxMin" TargetType="Button"> <Setter Property="Width" Value="30"></Setter> <Setter Property="Height&

WPF 在 Xaml 中设置当控件显示时夺取焦点.

以下以一个 TextBox 为例,当其变为可见时,获得焦点   <TextBox x:Name="TextBoxName"/> <TextBox.Style> <Style BasedOn="{StaticResource {x:Type TextBox}}" TargetType="TextBox"> <S

Wpf 收到键盘事件时执行 ViewModel 中的命令.

以 TextBox 中按下 Esc 为例: 1 <TextBox/> 2 <TextBox.InputBindings> 3 <KeyBinding 4 Key="Escape" 5 Command="{Binding Path=KeyPressedCommand}" /> 6 </TextBox.InputBindings> 7 <

WPF 数据验证

  Validation ValidationRule iDataErrorInfo+DataAnimation 的用法 //Validation:依赖属性用(在验证回调中返回false) //ValidationRule:依赖属性和普通类的属性都能用 //IdataErrorInfo:依赖属性和普通类的属性都能用,谁想用的话 就继承iDataErrorInfo 区别? ValidationRule可

WPF Type Converter和 IValueConverter

初学者。博客仅做个人的理解整理,不到位的地方欢迎大佬们指出,感谢。   1.类型转换器 TypeConverter 1.1类型转换器是用来干什么的? 在xaml中给控件的属性赋值,后台代码解析这个值并赋值给控件的对应的属性(这个属性肯定是依赖属性了) 如在xaml中写: <Border BorderBrush="Red" Borde

来瞧瞧,WPF 炫酷走马灯!

来瞧瞧,WPF 炫酷走马灯! 控件名:SpotLight 作者:WPFDevelopersOrg 原文链接: https://github.com/WPFDevelopersOrg/WPFDevelopers 框架使用大于等于.NET40; Visual Studio 2022; 项目使用 MIT 开源许可协议; 用Canvas做容器方便针对文本TextBlock做裁剪Clip动画操作; Ca

WPF中向下拉框中绑定枚举体

1、枚举绑定combox的ItemsSourceItemsSource绑定的是个集合值,要想枚举绑定ItemsSource,首先应该想到的是把枚举值变成集合。 方法一:使用资源里的ObjectDataProvider如以下枚举 public enum PeopleEnum { 中国人, 美国人, 英国人, 俄罗斯人

[WPF应用开发]来了解与微软保持高度同步的DevExpress XAML设计器

Visual Studio 2022使用全新的 WPF XAML 设计器(适用于所有版本的 .NET 和 .NET Framework),DevExpress技术团队一直与Microsoft 密切合作,在这个新的 XAML 设计器中复制(和扩展)WPF 产品线的设计时功能。在本文中,我们将总结这方面的功能。 DevExpress WPF v22.1正式版下载 快速操作 Dev

C# WPF 访问剪切板报错

如果剪贴板操作失败(例如 HRESULT 0x800401D0 (CLIPBRD_E_CANT_OPEN) 错误),则会引发相应的 ExternalException (,这是一种 ExternalException) 。 由于 Win32 OpenClipboard API 全局运行,因此编写良好的应用程序应在完成剪贴板操作后立即调用相应的 CloseClipboard API。 否

C#-WPF-LiveChart大数据时图标绘制(曲线图)并支持图片保存

xmlns:lvc="clr-namespace:LiveCharts.Wpf;assembly=LiveCharts.Wpf" <Button     Name="SaveBtn"     Grid.Row="0"     Width="100"     Height="32"     HorizontalAlignment="Center"     VerticalAlignm

【WPF】Behavior 行为

前言 行为是一类事物的共同特征,在WPF中通过行为可以封装一些通用的界面功能,从而实现代码重用来提高开发效率。因此他是一个非常好用的工具。引入dll文件找到System.Windows.Interactivity.dll文件。https://download.csdn.net/download/YouyoMei/12200463然后将其引入到项目中。在