私は、タイムシートで動作するビジネス モバイル アプリと、ドキュメントの受け入れと作成などの一般的なワークフローに取り組んでいます。
現在、1つのページに添付ファイルのリストが表示されています。ユーザーが添付ファイルをクリックすると、Webブラウザコントロールで開く必要があります。問題は、常に PNG や JPG であるとは限らず、Word 文書または PowerPoint プレゼンテーションである可能性があるということです。
私がしたことは、Webサービスから添付ファイルを取得した後、この関数を呼び出します。
public static string GetMimeType(string fileExt)
{
//fileExt.ThrowIfNullOrEmpty();
//fileExt = fileExt.TrimStart('.');
fileExt = Path.GetExtension(fileExt);
switch (fileExt)
{
case ".jpeg":
case ".gif":
case ".png":
case ".tiff":
case ".bmp":
return "image/" + fileExt;
case ".jpg":
return "image/jpeg";
case ".tif":
return "image/tiff";
case ".htm":
case ".html":
case ".shtml":
return "text/html";
case ".js":
return "text/javascript";
case ".csv":
case ".css":
case ".sgml":
return "text/" + fileExt;
case ".txt":
return "text/plain";
case ".wav":
return "audio/wav";
case ".mp3":
return "audio/mpeg3";
case ".mid":
return "audio/midi";
case ".qt":
case ".mov":
return "video/quicktime";
case ".mpg":
return "video/mpeg";
case ".avi":
return "video/" + fileExt;
case ".rtf":
return "application/" + fileExt;
case ".xls":
return "application/x-excel";
case ".docx":
case ".doc":
return "application/msword";
case ".ppt":
return "application/powerpoint";
case ".gz":
case ".tgz":
return "application/x-compressed";
default:
throw new NotSupportedException("Unknown fileExt: " + fileExt);
}
}
次に、ドキュメントのタイプを取得します。
今ここで私はそれをどうしたらいいのかわかりません...添付ファイルのMIMEタイプと名前を使用して、適切な方法で添付ファイルを表示するようWebブラウザコントロールに指示するにはどうすればよいですか。
これは、webbrowser コントロールのページ読み込みでこれまでに得たものです。
string imagename = WorkflowBase.ViewModel_WFPOSDocument.POSDocument.AttachmentList[0].FileName.ToString();
string image = WorkflowBase.ViewModel_WFPOSDocument.POSDocument.AttachmentList[0].Attachment.ToString();
string imagelink = WorkflowBase.ViewModel_WFPOSDocument.POSDocument.AttachmentList[0].AttachmentLink.ToString();
string imagemimetype = AccTech.Helpers_and_Extensions.MimeTypes.GetMimeType(imagename);
MyViewer.IsScriptEnabled = true;
MyViewer.DataContext = this;
MyViewer.Source = new Uri(URL, UriKind.Relative);
myviewer は Web ブラウザー コントロールです。
他に何か必要な場合は、言葉を言うだけです。
これを行う方法がわかりません。リンク、アドバイス、またはコードはまだジュニア開発者です。
よろしく