Я пытаюсь получить список каталогов из нескольких каталогов и поместить их в gridview. Пока что так хорошо, я даже включил searchPattern, чтобы вернуть имена папок на основе запроса. Однако моя проблема заключается в том, что когда я пытаюсь превратить путь папок в гиперссылку в GridView, я не могу получить имя столбца правильно, и он возвращает: «DataBinding:« System.String »не содержит свойства с именем« Полное имя'." Что я делаю не так? это путь к папке, не называемый «FullName»?Directory.GetDirectories в GridView с связанной гиперссылкой
Вот мой код, любая помощь приветствуется: Code Behind (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
Griview Код:
<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>
Уважением, Джеймс.
Отлично, вы объяснили это блестяще, и это работает! Большое спасибо Trajan! Когда я написал это, я начал думать: «Может быть, список строк не имеет имен столбцов», поэтому я добирался туда :) – Stoy
Рад, что он работает. Подумайте о Container.DataItem, если в один прекрасный день вы привяжете свое gridview к списку сложных объектов, это позволит избежать отражения метода Eval. – Trajan