本文整理汇总了C#中OpenFileDialog.SetTabsterFilter方法的典型用法代码示例。如果您正苦于以下问题:C# OpenFileDialog.SetTabsterFilter方法的具体用法?C# OpenFileDialog.SetTabsterFilter怎么用?C# OpenFileDialog.SetTabsterFilter使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类OpenFileDialog
的用法示例。
在下文中一共展示了OpenFileDialog.SetTabsterFilter方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: importToolStripMenuItem_Click
private void importToolStripMenuItem_Click(object sender, EventArgs e)
{
using (var ofd = new OpenFileDialog
{
Title = Resources.ImportTabDialogTitle,
Filter = string.Format("{0} (*{1})|*{1}", Resources.TabsterFile, Constants.TablatureFileExtension),
Multiselect = false
})
{
ofd.SetTabsterFilter(_fileImporters, allSupportedTypesOption: false, alphabeticalOrder: true); //todo implement "all supported types" handling
if (ofd.ShowDialog() != DialogResult.Cancel)
{
//native file format
if (ofd.FilterIndex == 1)
{
var file = _libraryManager.GetTablatureFileProcessor().Load(ofd.FileName);
if (file != null)
{
_libraryManager.Add(file);
}
}
else // third-party format
{
var importer = _fileImporters[ofd.FilterIndex - 2]; //FilterIndex is not 0-based and native Tabster format uses first index
AttributedTablature importedTab = null;
try
{
importedTab = importer.Import(ofd.FileName);
}
catch
{
MessageBox.Show(Resources.ImportErrorDialogCaption, Resources.ImportErrorDialogTitle, MessageBoxButtons.OK, MessageBoxIcon.Error);
}
if (importedTab != null)
{
using (var nd = new NewTabDialog(importedTab.Artist, importedTab.Title, importedTab.Type))
{
if (nd.ShowDialog() == DialogResult.OK)
{
var tab = nd.Tab;
tab.Contents = importedTab.Contents;
tab.Source = new Uri(ofd.FileName);
tab.SourceType = TablatureSourceType.FileImport;
_libraryManager.Add(tab);
UpdateDetails();
}
}
}
}
}
}
}