root/lang/csharp/MTFileUploader/MTFileUploader/SettingsForm.cs

Revision 11243, 2.5 kB (checked in by mayuki, 8 months ago)

接続先を複数登録できるようにした。

  • Property svn:keywords set to Id
Line 
1using System;
2using System.Collections.Generic;
3using System.ComponentModel;
4using System.Data;
5using System.Drawing;
6using System.Linq;
7using System.Text;
8using System.Windows.Forms;
9using MTFileUploader.Properties;
10
11namespace MTFileUploader
12{
13    public partial class SettingsForm : Form
14    {
15        private Settings _settings = Properties.Settings.Default;
16
17        public SettingsForm()
18        {
19            InitializeComponent();
20        }
21
22        private void SettingsForm_Load(object sender, EventArgs e)
23        {
24            _settings.Reload();
25            comboSites.DataSource = _settings.Sites;
26            propertyGrid.SelectedObject = _settings.Sites.Count > 0 ? _settings.Sites.First() : null;
27        }
28
29        private void btnOK_Click(object sender, EventArgs e)
30        {
31            _settings.Save();
32            this.Close();
33        }
34
35        private void ToolStripMenuItemAdd_Click(object sender, EventArgs e)
36        {
37            SiteSetting siteSetting = new SiteSetting();
38            siteSetting.SettingName = String.Format("新規サイト ({0})", DateTime.Now);
39            _settings.Sites.Add(siteSetting);
40            comboSites.BindingContext[_settings.Sites].SuspendBinding();
41            comboSites.BindingContext[_settings.Sites].ResumeBinding();
42            comboSites.SelectedItem = siteSetting;
43            propertyGrid.SelectedObject = siteSetting;
44        }
45
46        private void comboSites_SelectedIndexChanged(object sender, EventArgs e)
47        {
48            propertyGrid.SelectedObject = _settings.Sites.Find(site => site.SettingName == comboSites.Text);
49        }
50
51        private void ToolStripMenuItemDelete_Click(object sender, EventArgs e)
52        {
53            SiteSetting selectedSite = propertyGrid.SelectedObject as SiteSetting;
54            _settings.Sites.Remove(selectedSite);
55            comboSites.BindingContext[_settings.Sites].SuspendBinding();
56            comboSites.BindingContext[_settings.Sites].ResumeBinding();
57            comboSites.SelectedItem = null;
58        }
59
60        private void propertyGrid_PropertyValueChanged(object s, PropertyValueChangedEventArgs e)
61        {
62            SiteSetting siteSetting = propertyGrid.SelectedObject as SiteSetting;
63            comboSites.BindingContext[_settings.Sites].SuspendBinding();
64            comboSites.BindingContext[_settings.Sites].ResumeBinding();
65            comboSites.SelectedItem = siteSetting;
66            propertyGrid.SelectedObject = siteSetting;
67        }
68    }
69}
Note: See TracBrowser for help on using the browser.