You need to enable JavaScript to run this app. VS2019中开发C#打印功能编译报CS1069错误,缺失什么配置?
优惠活动
大模型
产品
解决方案
定价
更多

VS2019中开发C#打印功能编译报CS1069错误,缺失什么配置?

报错根因

两处CS1069报错不是示例代码的语法问题,核心原因是项目未引用承载这些类型的对应程序集:

  • 从.NET Core 3.0版本开始,原本内置在.NET Framework核心类库中的GDI+绘图、打印相关类型(包括Font、PrintPageEventArgs),被拆分到独立的NuGet包System.Drawing.Common中
  • VS2019默认创建的.NET Core/.NET 5+类库、WinForms项目,不会自动引入该包,即便你已经正确编写了using System.Drawing、using System.Drawing.Printing的命名空间引用,也会因找不到程序集内的类型定义触发编译报错。编译器提示的“类型已转发到程序集System.Drawing.Common”就是直接的原因提示。
解决操作
  • 为项目添加System.Drawing.Common程序集引用:
    1. 在解决方案资源管理器中右键点击项目下的「依赖项」节点
    2. 选择「管理NuGet程序包」
    3. 在浏览标签页搜索System.Drawing.Common,选择与项目目标框架匹配的版本完成安装
  • 安装完成后重新执行编译,原有两处CS1069报错会自动消除。
补充说明
  • 你提供的示例代码本身没有缺失内容,命名空间导入、逻辑写法完全符合C#语法要求,添加引用后即可正常编译运行
  • 如果你的项目是基于传统.NET Framework 4.x版本创建的,可直接在「依赖项-程序集」列表中搜索并勾选System.Drawing添加引用,无需安装NuGet包
  • System.Drawing.Common从.NET 7版本开始被标记为Windows平台专用库,在Linux、macOS环境下调用打印、绘图相关API会触发平台不支持异常。

内容的提问来源于stack exchange,提问作者Mark Hubelbank

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.28 17:45:04