UsrWpfPanel.cs
2.0 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
using Asa.FaceControl;
using Model;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Forms;
using System.Windows.Forms.Integration;
namespace SmartScan.SetControl.WPF
{
public partial class UsrWpfPanel : UserControl, ISetMenu
{
private readonly NS_Keyword _keywordControl; // 添加对NS_Keyword的引用
private readonly WPFWorkMode workMode;
private readonly WPF_MaterialTemplate _materialTemplate;
public UsrWpfPanel(UIElement ctl)
{
InitializeComponent();
if (ctl is NS_Keyword keyword)
{
_keywordControl = keyword;
}else if (ctl is WPFWorkMode workModes)
{
workMode = workModes;
}else if (ctl is WPF_MaterialTemplate wPF_MaterialTemplate)
{
_materialTemplate = wPF_MaterialTemplate;
}
else
{
throw new ArgumentException("必须传入NS_Keyword类型的控件");
}
elementHost = new ElementHost
{
Dock = DockStyle.Fill,
};
elementHost.Child = ctl;
}
ElementHost elementHost;
FacePanel ISetMenu.GetPanel()
{
facepnl.Controls.Add(elementHost);
return facepnl;
}
void ISetMenu.Save()
{
// 调用NS_Keyword的Save方法
if (_keywordControl != null)
{
_keywordControl.Save();
}
else if(workMode != null)
{
workMode.Save();
}else if (_materialTemplate!=null)
{
_materialTemplate.Save();
}
else
{
throw new InvalidOperationException("NS_Keyword实例未初始化");
}
}
}
}