Xamarin.Mac 使用 NSSavePanel 时显示默认文件名
Xamarin.Mac show default filename when using NSSavePanel
在 Xamarin.Forms 应用程序中,我希望在 Xamarin.Mac 项目中实现文件另存为操作。在显示 NSSavePanel 时,我希望默认显示当前文件名。
我看到提到了 setNameFieldStringValue here and here,但是 Xamarin 中似乎没有公开等效的方法。
可以这样做吗?
这是我正在使用的代码。
public string GetSaveAsFilePathOrNull(string defaultFileName)
{
var dlg = NSSavePanel.SavePanel;
dlg.SetNameFieldStringValue(defaultFileName); // Compiler error, no such method
if (dlg.RunModal() == 1)
{
var url = dlg.Url;
if (url != null)
{
var path = url.Path;
return path;
}
}
return null;
}
ObjC 函数 NSSavePanel.SetNameFieldStringValue
的 Xamarin.Mac C# 规范化是 read/write 属性 (NSSavePanel.NameFieldStringValue
).
var dlg = NSSavePanel.SavePanel;
dlg.NameFieldStringValue = defaultFileName;
在 Xamarin.Forms 应用程序中,我希望在 Xamarin.Mac 项目中实现文件另存为操作。在显示 NSSavePanel 时,我希望默认显示当前文件名。
我看到提到了 setNameFieldStringValue here and here,但是 Xamarin 中似乎没有公开等效的方法。
可以这样做吗?
这是我正在使用的代码。
public string GetSaveAsFilePathOrNull(string defaultFileName)
{
var dlg = NSSavePanel.SavePanel;
dlg.SetNameFieldStringValue(defaultFileName); // Compiler error, no such method
if (dlg.RunModal() == 1)
{
var url = dlg.Url;
if (url != null)
{
var path = url.Path;
return path;
}
}
return null;
}
ObjC 函数 NSSavePanel.SetNameFieldStringValue
的 Xamarin.Mac C# 规范化是 read/write 属性 (NSSavePanel.NameFieldStringValue
).
var dlg = NSSavePanel.SavePanel;
dlg.NameFieldStringValue = defaultFileName;