告诉我我做错了什么?(见下图)
为了方便起见FormControl(Form2为了理解问题,这里是主题:链接)
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Microsoft.Win32;
namespace MySoft
{
public partial class FormControl : Form
{
public static class FormHelper
{
public static void ShowInvisible(this Form form)
{
// сохраняем параметры окна
bool needToShowInTaskbar = form.ShowInTaskbar;
WindowState initialWindowState = form.WindowState;
// делаем окно невидимым
form.ShowInTaskbar = false;
form.WindowState = FormWindowState.Minimized;
// показываем и скрываем окно
form.Show();
form.Hide();
// восстанавливаем параметры окна
form.ShowInTaskbar = needToShowInTaskbar;
form.WindowState = initialWindowState;
}
}
public FormControl()
{
InitializeComponent();
}
// Остальной код
}
}
单独的类FormHelper.cs:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace MySoft
{
public static class FormHelper // У этого класса ноль ссылок...
{
public static void ShowInvisible(this FormControl form)
{
// сохраняем параметры окна
bool needToShowInTaskbar = form.ShowInTaskbar;
FormWindowState initialWindowState = form.WindowState;
// делаем окно невидимым
form.ShowInTaskbar = false;
form.WindowState = FormWindowState.Minimized;
// показываем и скрываем окно
form.Show();
form.Hide();
// восстанавливаем параметры окна
form.ShowInTaskbar = needToShowInTaskbar;
form.WindowState = initialWindowState;
}
}
}


将班级
FormHelper移到FormControl.它不能嵌套,这是 IDE 告诉您要做的。
在最初的答案中,它是一个“单独的”类,你把它放在另一个类中。
您不能
(this Form form)在嵌套类中使用此类参数。因此,您需要上课。WindowState并修复FormWindowState: