跳到主要内容

github/tai

公开

Tai · Windows 软件与网站使用时长统计。上游 Planshit/Tai 的源码镜像,非灵栈原创;MIT 许可。来源:https://github.com/Planshit/Tai 。本次为手动同步,暂不提供安装包。

提交记录
修改UI/Controls/SettingPanel/SettingPanelMultiItem.cs+60 −0看文件
@@ -244,12 +244,68 @@ namespace UI.Controls.SettingPanel
244244 {
245245 string value = (string)pi.GetValue(Data);
246246
247新增: if (SettingData.ContainsKey(pi.Name))
248新增: {
249新增: SettingData[pi.Name].Add(value);
250新增: }
251新增: else
252新增: {
253新增: SettingData.Add(pi.Name, new List<string>()
254新增: {
255新增: value
256新增: });
257新增: }
258新增:
259新增:
247260 var textBox = new InputBox();
248261 textBox.Text = value;
249262 textBox.Placeholder = attribute.Name;
250263 textBox.Width = 125;
264新增: textBox.TextChanged += (e, c) =>
265新增: {
266新增: textBox.Error = attribute.Name + (textBox.Text == String.Empty ? "不能为空" : "已存在");
267新增:
268新增: if (!attribute.IsCanRepeat)
269新增: {
270新增: if (SettingData[pi.Name].Contains(textBox.Text) && textBox.Tag.ToString() != textBox.Text)
271新增: {
272新增: textBox.ShowError();
273新增: return;
274新增: }
275新增: else
276新增: {
277新增: textBox.HideError();
278新增: }
279新增: }
280新增: if (textBox.Text == String.Empty)
281新增: {
282新增: textBox.ShowError();
283新增: }
284新增: else
285新增: {
286新增: textBox.HideError();
287新增: }
288新增: };
289新增: textBox.GotFocus += (e, c) =>
290新增: {
291新增: // 记录获得焦点时的数据
292新增: textBox.Tag = textBox.Text;
293新增: };
251294 textBox.LostFocus += (e, c) =>
252295 {
296新增: if (textBox.Text == String.Empty)
297新增: {
298新增: textBox.Text = textBox.Tag.ToString();
299新增: return;
300新增: }
301新增: if (!attribute.IsCanRepeat)
302新增: {
303新增: if (SettingData[pi.Name].Contains(textBox.Text) && textBox.Tag.ToString() != textBox.Text)
304新增: {
305新增: textBox.Text = textBox.Tag.ToString();
306新增: return;
307新增: }
308新增: }
253309 if (attribute.IsName)
254310 {
255311 Title = textBox.Text;
@@ -257,6 +313,10 @@ namespace UI.Controls.SettingPanel
257313 pi.SetValue(configData, textBox.Text);
258314 Data = configData;
259315 DataChanged?.Invoke(this, EventArgs.Empty);
316新增:
317新增: SettingData[pi.Name].Remove(textBox.Tag.ToString());
318新增: SettingData[pi.Name].Add(textBox.Text);
319新增:
260320 };
261321 var item = new SettingPanelItem();
262322 item.Name = attribute.Name;