当我改变从右到左的布局时,背景图像不呈现
本文关键字:图像 背景 改变 从右到左 布局 | 更新日期: 2023-09-27 18:08:03
我已经为我的表单设置了一个背景图像,并将从右到左属性设置为No和从右到左布局到false并试图用按钮改变这些,但是当我单击按钮时,我不渲染和背景是白色的。(Windows form c#).
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 WindowsFormsApplication9
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
this.RightToLeft = RightToLeft.Yes;
this.RightToLeftLayout = true;
}
}
}
MSDN这里的"检查备注"部分
对于Form.RightToLeftLayout
属性:
BackgroundImage, Opacity, TransparencyKey,和绘画事件是不支持的。
似乎我们无法在表单设置从右到左的布局时设置图像,但一种方法是欺骗用户看到图片。与面板dock填充和设置一个图像背景的面板用户将只看到图片。检查代码
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 WindowsFormsApplication10
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
this.RightToLeft = RightToLeft.Yes;
this.RightToLeftLayout = true;
Panel pnl = new Panel();
pnl.Dock = DockStyle.Fill;
pnl.BackgroundImage = System.Drawing.Image.FromFile("D:''Picture''Graphic''2''(1).png");//address of your image
pnl.BackgroundImageLayout = ImageLayout.Stretch;
this.Controls.Add(pnl);
}
}
}