当前位置: 首页 > news >正文

wpf问题记录

1 把文件资源 比如图片 批量改成可以复制到bin文件里  属性

  

<ItemGroup><Content Include="Resources\b1.jpg" /><Content Include="Resources\b2.jpg" /><Content Include="Resources\b3.jpg" />
</ItemGroup><ItemGroup><Content Include="Resources\*.jpg"><CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory></Content><Content Include="Resources\*.png"><CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory></Content>
</ItemGroup>

2 使用form的框架类   在高版本里面使用  直接修改.scproj

    <UseWindowsForms>true</UseWindowsForms>

3 你的初始化逻辑不依赖 UI 渲染状态、不访问 ActualWidth/Height、不操作可视化树、不需要等窗口显示出来,那么放在构造函数中是完全没问题,甚至是推荐的

4 tools----生成resx

 // 获取 .exe 所在目录(例如:bin\Debug)string outputDirectory = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);// 跳到项目根目录:假设是 ..\..\string projectDirectory = Path.GetFullPath(Path.Combine(outputDirectory, @"..\..\.."));string filePath = Path.Combine(projectDirectory, "AA.resx"); // 推荐 .resx 扩展名string Resourcpath = projectDirectory + "\\Resources";// 4. 获取所有图片文件(支持常见格式)string[] imageFiles = Directory.GetFiles(Resourcpath, "*.*").Where(file => new[] { ".jpg", ".jpeg", ".png", ".bmp", ".gif", ".ico" }.Contains(Path.GetExtension(file).ToLower())).ToArray();if (imageFiles.Length == 0){MessageBox.Show("未在 Images 文件夹中找到图片文件。");return;}if (File.Exists(filePath)){File.Delete(filePath);}//获取图片的resourceResXResourceWriter rw = new ResXResourceWriter(filePath);try{foreach (string imageFile in imageFiles){string fileName = Path.GetFileName(imageFile);           // 带扩展名:b1.jpgstring resourceName = Path.GetFileNameWithoutExtension(imageFile); // 不带扩展名:b1if (!fileName.StartsWith("im"))continue;try{rw.AddResource(resourceName, Image.FromFile(imageFile));}catch (Exception ex){MessageBox.Show($"无法加载图片: {fileName}, 错误: {ex.Message}");}}}finally{rw.Generate();rw.Close();}

http://www.lryc.cn/news/617176.html

相关文章:

  • 【2025最新版】PDF24 Creator,PDF编辑,合并分割,格式转换全能工具箱,本地离线版本,完全免费!
  • 【Maven】02 - 进阶篇
  • 《深度剖析前端框架中错误边界:异常处理的基石与进阶》
  • 华为虚拟防火墙配置案例详解
  • 基于SpringBoot+Uniapp的血压监控小程序(Echarts图形化分析)
  • 华为watch5心率变异性测量法的底层逻辑
  • Django ORM查询技巧全解析
  • 41.【.NET8 实战--孢子记账--从单体到微服务--转向微服务】--扩展功能--集成网关--网关集成Swagger
  • Spring MVC 注解参数接收详解:@RequestBody、@PathVariable 等区别与使用场景
  • kafka 中的Broker 是什么?它在集群中起什么作用?
  • [Oracle] UNPIVOT 列转行
  • CodeBuddy IDE完全食用手册:从安装到生产力爆发的技术流解剖
  • 视频前处理技术全解析:从基础到前沿
  • 【安全发布】微软2025年07月漏洞通告
  • AI大模型:(二)5.1 文生视频(Text-to-Video)模型发展史
  • 从ELF到进程间通信:剖析Linux程序的加载与交互机制
  • 音视频学习(五十三):音频重采样
  • 动态创建可变对象:Python类工厂函数深度解析
  • Vue3从入门到精通:3.1 性能优化策略深度解析
  • Unity跨平台性能优化全攻略:PC与安卓端深度优化指南 - CPU、GPU、内存优化 实战案例C#
  • docker集群
  • 在Linux中部署tomcat
  • MyBatis高级特性与性能优化:从入门到精通的实战指南
  • NEON性能优化总结
  • EXISTS 替代 IN 的性能优化技巧
  • Unity大型场景性能优化全攻略:PC与安卓端深度实践 - 场景管理、渲染优化、资源调度 C#
  • C# 异步编程(BeginInvoke和EndInvoke)
  • openEuler、 CentOS、Ubuntu等 Linux 系统中,Docker 常用命令总结
  • Selenium经典面试题 - 多窗口切换解决方案
  • 深入解析游戏引擎(OGRE引擎)通用属性系统:基于Any类的类型安全动态属性设计