Как установить свойство объекта формы глобально в .net winforms? - PullRequest
0 голосов
/ 24 июня 2010

Я использую .net формы выигрыша. Мне нужно установить некоторые общие свойства для моих форм выигрыша, такие как css в веб-приложении

ex

form background color=red 
button width =100
Text box width=200
font family=arial

как это сделать?

Ответы [ 3 ]

2 голосов
/ 24 июня 2010

как насчет создания базовой формы, которую наследуют все остальные формы.На базовой форме вы можете установить общий вид.затем, если необходимо перезаписать общие свойства, вы можете сделать это.

EDIT как-то так для базовой формы.

public partial class BaseForm : Form
{
    private Font _font = new Font("Arial", 10);
    private Color _backColor = Color.Red;
    public BaseForm()
    {
        InitializeComponent();
    }

    public override Font Font
    {
        get { return _font; }
        set { _font = value; }
    }
    public override Color BackColor
    {
        get { return _backColor; }
        set { _backColor = value; }
    }
}

и это для формычто вы хотите отобразить

public partial class Form1 : BaseForm
{
    public Form1()
    {
        InitializeComponent();
    }
}
1 голос
/ 24 июня 2010

Используйте файл App.Config или вкладку Настройки в свойствах проекта.

0 голосов
/ 24 июня 2010

Вы можете создать статический класс для их хранения - возможно, в словаре, возможно.

Что-то подобное может работать:

public static class GlobalData
    {
        private static Dictionary<string, object> settings;

        private static void SetDefaults()
        {
            settings = new Dictionary<string, object>();
            settings.Add("BackgroundColour", "Red");
            settings.Add("Width", 100);
        }

        public static Dictionary<string, object>  FormSettings
        { 
            get {

                if (settings ==null)
                {
                    SetDefaults();
                }
                return settings;

            }

        }



    }

РЕДАКТИРОВАТЬ:

Вы можетевы используете это так:

this.Width = Convert.ToInt32(GlobalData.FormSettings["Width"].ToString());
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...