📄 ssfilesharecontrol.cs
字号:
namespace Imps.Client.Pc.Options
{
using Imps.Client;
using Imps.Client.Core;
using Imps.Client.Pc;
using Imps.Client.Pc.Controls;
using Imps.Client.Resource;
using Imps.Client.Utils;
using System;
using System.ComponentModel;
using System.Drawing;
using System.IO;
using System.Windows.Forms;
public class SsFileShareControl : OptionsControlBase
{
private IFrameworkWindow _iFrameworkWnd;
private XButton btnModify;
private IContainer components;
private FolderBrowserDialog folderBrowserDialogPath;
private XLabel lbFileShare;
private XLabel lbFileShareTip;
private XTextBox xtbPath;
public SsFileShareControl(IFrameworkWindow iFrameworkWnd)
{
this._iFrameworkWnd = iFrameworkWnd;
this.InitializeComponent();
this.handleUIEvent();
}
private void btnModify_Click(object sender, EventArgs e)
{
this.folderBrowserDialogPath.RootFolder = Environment.SpecialFolder.Desktop;
string str = this._user.Configuration.UserSetting.ConversationSetting.DefaultShareContentSavePath.Value;
if ((str != null) && (str.Length != 0))
{
this.folderBrowserDialogPath.SelectedPath = this._user.Configuration.UserSetting.ConversationSetting.DefaultShareContentSavePath.Value;
}
else
{
this.folderBrowserDialogPath.SelectedPath = Environment.SpecialFolder.Personal.ToString();
}
this.folderBrowserDialogPath.Description = StringTable.FileShare.lbFileShareCfgTip;
if (this.folderBrowserDialogPath.ShowDialog() == DialogResult.OK)
{
string selectedPath = this.folderBrowserDialogPath.SelectedPath;
if (Directory.Exists(selectedPath))
{
this.xtbPath.Text = selectedPath;
}
}
}
public override bool CheckUserInput()
{
if (!Directory.Exists(this.xtbPath.Text))
{
this._iFrameworkWnd.UnifiedMessageBox.ShowError(StringTable.Configuration.DirectoryNotExist_Transfer);
return false;
}
return true;
}
protected override void Dispose(bool disposing)
{
if (disposing && (this.components != null))
{
this.components.Dispose();
}
base.Dispose(disposing);
}
private void handleUIEvent()
{
this.xtbPath.TextChanged += new EventHandler(this.uiData_Changed);
}
private void InitializeComponent()
{
this.lbFileShare = new XLabel();
this.lbFileShareTip = new XLabel();
this.btnModify = new XButton();
this.xtbPath = new XTextBox();
this.folderBrowserDialogPath = new FolderBrowserDialog();
XLabel label = new XLabel();
base.SuspendLayout();
label.AutoEllipsis = false;
label.BorderColor = Color.Black;
label.BorderStyle = BorderStyle.Fixed3D;
label.ButtonBorderStyle = ButtonBorderStyle.Solid;
label.Location = new Point(80, 0x10);
label.Name = "lbLine";
label.Size = new Size(280, 2);
label.TabIndex = 8;
label.TextAlign = ContentAlignment.TopLeft;
label.UseMnemonic = false;
this.lbFileShare.AutoEllipsis = false;
this.lbFileShare.AutoSize = true;
this.lbFileShare.BorderColor = Color.Black;
this.lbFileShare.BorderStyle = BorderStyle.None;
this.lbFileShare.ButtonBorderStyle = ButtonBorderStyle.Solid;
this.lbFileShare.Location = new Point(5, 9);
this.lbFileShare.Name = "lbFileShare";
this.lbFileShare.Size = new Size(0x3b, 13);
this.lbFileShare.TabIndex = 0;
this.lbFileShare.Text = "lbFileShare";
this.lbFileShare.TextAlign = ContentAlignment.TopLeft;
this.lbFileShare.UseMnemonic = false;
this.lbFileShareTip.AutoEllipsis = false;
this.lbFileShareTip.AutoSize = true;
this.lbFileShareTip.BorderColor = Color.Black;
this.lbFileShareTip.BorderStyle = BorderStyle.None;
this.lbFileShareTip.ButtonBorderStyle = ButtonBorderStyle.Solid;
this.lbFileShareTip.Location = new Point(0x12, 0x24);
this.lbFileShareTip.Name = "lbFileShareTip";
this.lbFileShareTip.Size = new Size(0x4a, 13);
this.lbFileShareTip.TabIndex = 1;
this.lbFileShareTip.Text = "lbFileShareTip";
this.lbFileShareTip.TextAlign = ContentAlignment.TopLeft;
this.lbFileShareTip.UseMnemonic = false;
this.btnModify.Location = new Point(0x10b, 0x5d);
this.btnModify.Name = "btnModify";
this.btnModify.Size = new Size(0x4b, 0x19);
this.btnModify.TabIndex = 3;
this.btnModify.UseVisualStyleBackColor = true;
this.btnModify.Click += new EventHandler(this.btnModify_Click);
this.xtbPath.BackColor = Color.FromArgb(240, 240, 240);
this.xtbPath.BorderStyle = BorderStyle.FixedSingle;
this.xtbPath.Location = new Point(0x15, 0x40);
this.xtbPath.Name = "xtbPath";
this.xtbPath.ReadOnly = true;
this.xtbPath.Size = new Size(0x141, 20);
this.xtbPath.TabIndex = 2;
base.AutoScaleDimensions = new SizeF(6f, 13f);
base.AutoScaleMode = AutoScaleMode.Font;
base.Controls.Add(this.lbFileShare);
base.Controls.Add(this.xtbPath);
base.Controls.Add(this.btnModify);
base.Controls.Add(this.lbFileShareTip);
base.Controls.Add(label);
base.Name = "SsFileShareControl";
base.Size = new Size(0x16b, 0x1b1);
base.Load += new EventHandler(this.SsFileShareControl_Load);
base.ResumeLayout(false);
base.PerformLayout();
}
private void SsFileShareControl_Load(object sender, EventArgs e)
{
this.lbFileShare.Text = StringTable.FileShare.lbFileShareCfg;
this.lbFileShareTip.Text = StringTable.FileShare.lbFileShareCfgTip;
this.btnModify.Text = StringTable.Common.btnBrowse;
}
private void uiData_Changed(object sender, EventArgs e)
{
UiErrorHelper.HandEventSafely(this._iFrameworkWnd, delegate {
base.Modified = true;
});
}
public override bool UpdateData(bool update)
{
try
{
if (update)
{
if (!this.CheckUserInput())
{
return false;
}
Suspender suspender = new Suspender(this._user.Configuration.UserSetting);
try
{
this._user.Configuration.UserSetting.ConversationSetting.DefaultShareContentSavePath.ProposedValue = this.xtbPath.Text;
}
finally
{
suspender.Dispose();
}
}
else
{
this.xtbPath.Text = (string) this._user.Configuration.UserSetting.ConversationSetting.DefaultShareContentSavePath;
}
base.Modified = false;
return true;
}
catch (Exception exception)
{
ClientLogger.WriteException(exception);
return false;
}
}
private Imps.Client.Core.User _user
{
get
{
return this._iFrameworkWnd.AccountManager.CurrentUser;
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -