c# - 如何在 c# 中以表单形式添加的 UserControl 上绘制渐变?
问题描述
加载表单时将添加 UserControls 2 列和多行
以显示最近添加的数据
行数取决于屏幕的高度。
取决于屏幕宽度的列数
if ((int)count_columns == 2)
{
for (int sp = 0; sp <= (int)count_rows; sp++)
{
//add UserControl
latest latest1 = new latest();
latest1.Name = String.Concat("latest1_", sp.ToString());
latest1.Left = (leftPanel.Width + (int)space_between_columns);
latest1.Top = ((topPanel.Height + (32 * sp)) + (latest1.Height * sp)) + 32;
this.Controls.Add(latest1);
latest latest2 = new latest();
latest2.Name = String.Concat("latest2_", sp.ToString());
latest2.Left = (2 * (int)space_between_columns + latest2.Width + leftPanel.Width);
latest2.Top = ((topPanel.Height + (32 * sp)) + (latest1.Height * sp)) + 32;
this.Controls.Add(latest2);
}
}
当尝试在 UserControl 上绘制渐变时
private void latest1_Paint(object sender, PaintEventArgs e)
{
Pen white = new Pen(Color.White);
var rec = new Rectangle(0, 0, 500, 145);
var brush = new System.Drawing.Drawing2D.LinearGradientBrush(
rec,
Color.FromArgb(255, Color.DarkBlue),
Color.FromArgb(0, Color.DarkBlue),
90f);
e.Graphics.PixelOffsetMode = System.Drawing.Drawing2D.PixelOffsetMode.Half;
e.Graphics.FillRectangle(brush, rec);
}
没啥事儿
解决方案
推荐阅读
- javascript - vue create with e2e 显示奇怪的错误
- angular-material - cypress:角度材质滑块的设置值
- python - 重命名熊猫数据框中的一百个或更多列名
- python - Json 到 django 模型。Python 数据类型错误
- javascript - 如何在 EJS 中实现 CSS 文件
- netsuite - 有没有办法在 NetSuite 上的已保存搜索中搜索多个关键字?
- typo3 - 如何在我们的本地机器上设置现有的 TYPO3 项目?
- javascript - Angular Karma - TypeError:无法读取未定义的属性“_id”
- android - 如何添加 android 的多个不同的 firebase api 密钥以使用解析服务器发送推送?
- jwt - 如何在前端安全地存储 JWT