Реализация IPersistComponentSettings (.net 2.0)
От: Аноним  
Дата: 27.01.06 12:36
Оценка: 14 (1)
Создаете свой класс свойств

class MySettings : ApplicationSettingsBase
{
public MySettings(string settingsKey)
: base(settingsKey)
{
}
[UserScopedSetting()]
[DefaultSettingValueAttribute("Red")]
public Color BackColor
{
get { return (Color)this["BackColor"]; }
set { this["BackColor"] = value; }
}
}

создаете свой элемент управления

public partial class UserControl1 : UserControl, IPersistComponentSettings
{
private bool _save = true;
private MySettings _settings;
public UserControl1()
{
InitializeComponent();
_settings = new MySettings(Name);
}
#region IPersistComponentSettings Members
public void LoadComponentSettings()
{
_settings.Reload();
}
public void ResetComponentSettings()
{
_settings.Reset();
}
public void SaveComponentSettings()
{
_settings.Save();
}
public bool SaveSettings
{
get {return _save;}
set {_save = value;}
}
public string SettingsKey
{
get{return Name;}
set{_settings.SettingsKey = value;}
}
#endregion
private void UserControl1_Load(object sender, EventArgs e)
{
Binding bndBackColor = new Binding("BackColor", _settings,
"BackColor", true, DataSourceUpdateMode.OnPropertyChanged);
this.DataBindings.Add(bndBackColor);
}
protected override void Dispose(bool disposing)
{
if (disposing && SaveSettings)
{
SaveComponentSettings();
}
if (disposing && (components != null))
{

components.Dispose();
}
base.Dispose(disposing);
}
}
Scio me nihil scire.
Ukraine .Net Alliance
Украинское сообщество .Net разработчиков
Заметки


данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.