我的课堂上有一些对话框,我正在尝试用一个函数初始化它们:
private void InitializeFileDialog(ref FileDialog fileDialog)
{
fileDialog.Filter = "Word Documents|*.doc|Excel Worksheets|*.xls|PowerPoint Presentations|*.ppt" +
"|Office Files|*.doc;*.xls;*.ppt" +
"|All Files|*.*";
fileDialog.DefaultExt = "txt";
}
问题是当我调用它时:
InitializeFileDialog(ref dialog);
error CS1503: Argument 1: cannot convert from 'ref Microsoft.Win32.OpenFileDialog' to 'ref Microsoft.Win32.FileDialog'
我试图投射,但由于某种原因它不能。有什么问题?是因为FileDialog
抽象吗?我试图查找是否是这个原因,但我找不到任何有用的东西。
以下是在 中找到的声明Microsoft.Win32
:
public abstract class FileDialog : CommonDialog
public sealed class OpenFileDialog : FileDialog
我也尝试使用泛型,但没有用。我错过了什么?