當我選擇文件名「image.mgm」對話框System.Windows.Forms.SaveFileDialog 出奇增加了擴展.BMP,並通過產權文件名返回「image.mgm.BMP」。 它不會發生「image.png」。SaveFileDialog令人驚訝的增加擴展到文件
幾個樣品:
- image.bmp ==> image.bmp
- image.png ==> image.png
- image.mgm ==>image.mgm.BMP
- image.MGM ==> image.MGM
如何解決意外(對我來說)的行爲嗎? https://github.com/constructor-igor/TechSugar/tree/master/WinForm/FileSaveDialogIssue/FileSaveDialogIssue
UPD: 額外的事實:樣品
來源可在github上發現當我添加鍵「HKEY_CLASSES_ROOT.mgm」註冊表「文件對話框」停止的添加「.BMP」到.mgm
public Form1()
{
InitializeComponent();
this.saveFileDialog.AddExtension = false;
}
private void btnOpenFile_Click(object sender, EventArgs e)
{
saveFileDialog.Title = @"Save calculated image";
saveFileDialog.FileName = "noname.tiff";
saveFileDialog.Filter = @"My Files(*.BMP;*.MGM;*.PNG)|*.BMP;*.MGM;*.PNG|All files (*.*)|*.*";
if (saveFileDialog.ShowDialog(this) == DialogResult.OK)
{
MessageBox.Show(String.Format("File name {0}", saveFileDialog.FileName));
}
}
您是否在對話框中選擇了「所有文件」過濾器?如果不是,請在按保存按鈕之前嘗試。 – Sylence
「所有文件」過濾器沒有問題,但我不明白「我的文件」過濾器有什麼問題。 – constructor
哦......我沒有意識到.mgm是「我的文件」過濾器的一部分。你確定「bmp」和「png」(小寫)有效嗎? – Sylence