Изображение BackGround не отображается при изменении макета справа налево

1

Я установил обратное изображение для моей формы и установил право налево для свойства " Нет", а также " справа налево" на " false" и попытался изменить их с помощью кнопки, но когда я нажимаю кнопку "i", она не отображается, а backGround - "белый". Windows Form С#).

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;
        }
    }
}
Теги:

2 ответа

0
Лучший ответ

кажется, что мы не можем установить изображение, когда форма установлена справа налево, но один способ - обмануть пользователя, чтобы увидеть изображение. с панелью док-станции для заполнения и установки фона изображения для пользователя панели будет видеть только изображение. проверьте код.

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);
        }
    }
}
2

Проверьте раздел Замечаний здесь на MSDN.

Для свойства Form.RightToLeftLayout:

BackgroundImage, Opacity, TransparencyKey и события рисования не поддерживаются.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню