abm*_*bmv 4 c# window instance
我有一个加载菜单的"加载程序应用程序",当用户单击菜单图像按钮时,列表视图将根据文本打开
(if text = employee)
(Go to class A)
(Go to class B)
...
...
(Show List View Window)
Run Code Online (Sandbox Code Playgroud)
如果他再次点击它再次打开的同一个按钮,我想阻止这个.即但是这适用于WPF应用程序
Mar*_*ell 11
如果你想要一个开放表格的清单,那就是Application.OpenForms.您可以使用GetType()并检查.Assembly以查找来自不同程序集的那些来迭代这个.除此之外,我对这个问题并不完全清楚......
Assembly currentAssembly = Assembly.GetExecutingAssembly();
List<Form> formsFromOtherAssemblies = new List<Form>();
foreach (Form form in Application.OpenForms) {
if (form.GetType().Assembly != currentAssembly) {
formsFromOtherAssemblies.Add(form);
}
}
Run Code Online (Sandbox Code Playgroud)
如果您只想跟踪自己打开的表单,请缓存该实例.或者,如果您使用"拥有的表单",您只需按名称检查:
private void button1_Click(object sender, EventArgs e) {
foreach (Form form in OwnedForms) {
if (form.Name == "Whatever") {
form.Activate();
return;
}
}
Form child = new Form();
child.Name = "Whatever";
child.Owner = this;
child.Show(this);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
58439 次 |
| 最近记录: |