0

そこで、VBA から .NET に移行し、VBA では Application.FileDialog オブジェクトを使用しました。ボタンの名前を変更でき、ダイアログがいいので、とても気に入っています。とにかく、これを私が書いている.NETプログラムで使用したいと思いますが、.NETに少し慣れていないため、これを実装する方法がわかりません。

Microsoft.Office.Core 参照を使用しており、FileDialog をインスタンス化しようとすると、インターフェイスであるためできないと表示されます。わかりましたが、それをインスタンス化するにはどうすればよいですか? 新しいクラスを作成してから「Implements FileDialog」を作成しようとしましたが、VSは、何かをする必要があるFileDialogのプロパティとメソッドの膨大なリストを提供してくれました...混乱しています。これは MSDN からの参照です: http://msdn.microsoft.com/en-us/library/Microsoft.Office.Core.FileDialog%28v=office.14%29.aspx

だからここに私の質問があります:

  1. より良い選択肢があるかどうかに関係なく、これをどのように実装しますか? ...ただ学びたいだけ
  2. より良い方法はありますか?別の方法ですか?

更新:ファイル ブラウザーのように見えるフォルダー ブラウザーを探しています

ありがとう!ジャスティン

4

2 に答える 2

3

OpenFileDialogコントロールを試す

 System.Windows.Forms.OpenFileDialog()

それはあなたのニーズに合っていますか?

于 2013-07-16T13:27:12.130 に答える
2

フォームのツールボックスを表示すると、フォームにOpenFileDialogドラッグできる (およびその他) があります。ここにその使用の簡単な例があります。

必要に応じて Microsoft.Office.Core バージョンを使用することもできますが、少し手間がかかります (利益はほとんどありません)。

Office フォルダー ダイアログ (VB.NET から) の最初の手順は次のとおりです

Imports Microsoft.Office.Core       'Project menu, Add references
Imports Microsoft.Office.Interop.Excel

Public Class Form1

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim xl As New Microsoft.Office.Interop.Excel.Application

        xl.FileDialog(MsoFileDialogType.msoFileDialogFolderPicker).Show()


    End Sub
End Class

最初に [プロジェクト] メニューの [参照の追加] に移動する必要があります。私はExcelを使用していますが、Accessなどである可能性があります。

これはExcel VBA の例です。余分なコードを私のコードに組み込むことができます。

于 2013-07-16T13:27:28.697 に答える