0
点赞
收藏
分享

微信扫一扫

.NET9里WinForm更新了什么

zhongjh 03-02 18:00 阅读 4

  下面是几个在.NET9中WinForm的新功能!

  • 主题

  Windows Forms 已初步支持暗模式,目标是在 .NET 10 中实现完整支持。应用程序的颜色模式可以设置为以下几种值:

  • SystemColorMode.Classic—(默认)浅色模式,与之前版本的 Windows Forms 相同。
  • SystemColorMode.System—遵循 Windows 设置的浅色或深色模式。
  • SystemColorMode.Dark—使用深色模式。

<NoWarn>$(NoWarn);WFO5001</NoWarn>

Application.SetColorMode(SystemColorMode.Dark);

.NET9里WinForm更新了什么_.NET9

 

按钮的效果不佳

  • ToolStrip属性AllowClickThrough

ToolStrip控件的AllowClickThrough属性,默认值是False。现在有一个ToolStripButton,并且有单击事件,如果当前窗体不是焦点,且可视,这时点击这个ToolStripButton时,窗体首先被选中,成为焦点,然后再次点击ToolStripButton时,它的事才会起作用。如果把AllowClickThrough设置成True,当前窗体不是焦点,且可视,当点击ToolStripButton时,它的事会直接执行,并且窗体会成为焦点窗体。

  • System.Drawing.Imaging.Effects 

System.Drawing 库现在支持 GDI+ 位图效果,如模糊和色调效果。虽然这些效果早已是 GDI+ 的一部分,但直到现在才通过 System.Drawing 对外开放。

可以通过调用 Bitmap.ApplyEffect(Effect, Rectangle) 方法将效果应用于位图。提供所需的效果以及一个可选的 Rectangle 参数以指定应用效果的区域。使用 Rectangle.Empty 来处理整个图像。

System.Drawing.Imaging.Effects 命名空间包含以下可应用的效果:

名称

含义

BlackSaturationCurveEffect

调整黑色饱和度,影响图像中深黑色的浓度与纯度。

BlurEffect

模糊效果,降低图像清晰度,常用于平滑细节或减少噪点。

BrightnessContrastEffect

调整图像的亮度与对比度,使图像更亮或更暗、更强烈或柔和。

ColorBalanceEffect

调整图像的色彩平衡,改变图像中红、绿、蓝色的比例。

ColorCurveEffect

通过曲线调整不同颜色通道,增加图像的颜色精细度和层次感。

ColorLookupTableEffect

应用色彩查找表(LUT)来转换图像颜色,实现特定的色彩风格或效果。

ColorMatrixEffect

使用颜色矩阵改变图像色彩,可用于创建特定的色调和滤色效果。

ContrastCurveEffect

调整图像的对比度曲线,控制图像不同区域的亮暗程度。

CurveChannel

单独调整颜色通道(红、绿、蓝)的曲线,用于细致控制各个颜色的表现。

DensityCurveEffect

控制图像的密度曲线,用于增减图像特定亮度区域的厚重感。

ExposureCurveEffect

调整曝光度曲线,控制图像的亮度以增强或减少曝光效果。

GrayScaleEffect

将图像转换为灰度模式,只保留亮度信息,去除所有色彩。

HighlightCurveEffect

调整高光曲线,增强或减弱图像中的高亮区域。

InvertEffect

反相效果,将图像的颜色转换为相反的颜色,生成负片效果。

LevelsEffect

调整图像的色阶,通过改变输入和输出黑白点来控制图像亮暗。

MidtoneCurveEffect

调整中间色调曲线,主要影响图像的中间亮度区域。

ShadowCurveEffect

调整阴影曲线,增强或减弱图像中的阴影区域。

SharpenEffect

锐化效果,增加图像边缘的清晰度,使细节更加突出。

TintEffect

应用色调效果,增加某种颜色的覆盖,使图像带有特定色彩基调。

VividEffect

增加图像的色彩饱和度和对比度,使图像显得更加鲜艳生动。

WhiteSaturationCurveEffect

调整白色饱和度,影响图像中纯白区域的饱和感与明亮度。

下面是一个反相效果的代码:

var bmp = new Bitmap(Image.FromFile("Microsoft_logo.png"));
var invertEffect = new System.Drawing.Imaging.Effects.InvertEffect();
bmp.ApplyEffect(invertEffect);
bmp.Save(DateTime.Now.ToString("ddHHmmssfff") + ".png");

效果如下:

.NET9里WinForm更新了什么_.NET9_02

 

  • FolderBrowserDialog多选

  FolderBrowserDialog 现在支持选择多个文件夹,这些文件夹存储在 SelectedPaths 数组中。要启用多选功能,请将 Multiselect 设置为 true。

  文章来源微信公众号

.NET9里WinForm更新了什么_.NET9_03

 

 

举报

相关推荐

0 条评论