Files
KJD_WebService/TEMUKJD/KJDForms/BaseForms/BaseForm.cs
T

52 lines
1.3 KiB
C#

using NaiBa.Util.Extension;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace TemuKJD.KJDForms.BaseForms
{
public partial class BaseForm : Form
{
public BaseForm()
{
InitializeComponent();
}
private void BaseForm_Load(object sender, EventArgs e)
{
using (Graphics graphics = Graphics.FromHwnd(IntPtr.Zero))
{
float dpi = graphics.DpiX;
// 或者使用 graphics.DpiY 获取垂直方向的DPI
// float dpi = graphics.DpiY;
// Console.WriteLine("Screen DPI: " + dpi); // winform程序会闪退
SetFont(this, dpi);
}
}
void SetFont(Control control, float dpi)
{
foreach (Control c in control.Controls)
{
SetFont(c, dpi);
Font of = c.Font;
Font f = new Font(of.FontFamily, (of.Size * 96.0 / dpi).ParseToFloat(), of.Style, Font.Unit, Font.GdiCharSet, Font.Bold);
c.Font = f;
if (c is DataGridView)
{
}
}
}
}
}