複数のディレクトリからディレクトリのリストを取得して、それらをグリッドビューに入れようとしています。これまでのところ、クエリ文字列に基づいてフォルダー名を取得するための searchPattern も含めました。ただし、GridView でフォルダー パスをハイパーリンクに変換しようとすると、問題が発生します。列名を正しく取得できないようで、「DataBinding: 'System.String' に次の名前のプロパティが含まれていません」フルネーム'。" 私は何を間違っていますか?フォルダ パスは「FullName」と呼ばれていませんか?
これが私のコードです。助けていただければ幸いです:コードビハインド(VB.NET)
Dim paths As String = "\\xx\PROJECTS\OilGas\;\\xx\PROJECTS\Utils\;\\xx\PROJECTS\Rail\RAIL PROJECTS\PROJECTS - ACTIVE\"
Dim pathList As String() = paths.Split(";")
Dim files = New List(Of String)()
Dim search As String = "*" + qs.Text
Dim ext As String = "*"
Dim searchPattern As [String] = [String].Format("{0}*{1}", search, ext)
For Each str As String In pathList
Dim d As New DirectoryInfo(str)
files.AddRange(Directory.GetDirectories(d.FullName, searchPattern))
GridView1.DataSource = files
GridView1.DataBind()
Next
グリビューコード:
<asp:GridView ShowHeader="True" ID="GridView1" runat="server" BorderStyle="None" GridLines="None">
<Columns>
<asp:TemplateField >
<ItemTemplate>
<asp:HyperLink ID="HyperLink1" NavigateUrl='' Target="_blank" Text='<%#Eval("FullName")%>' runat="server"></asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<EmptyDataTemplate>
<em><strong><span style="color: #ff0033">Invalid project code or no project folder found
with that project code.</span></strong></em>
</EmptyDataTemplate>
</asp:GridView>
敬具、ジェームズ。