=====================================================================================================
前提内容
=====================================================================================================
■使用環境
VB2008
.NET Framework 3.5SP1
■GridView表形式
--------------------------------------------
| 氏名 | 電話番号1 | 電話番号2 | 電話番号3 |
--------------------------------------------
| | | | |
--------------------------------------------
■クラス
Public Class userInfo
Public mUserName As String
Public mPhoneNumberLst As List(Of String) '//最大3件まで
Public ReadOnly Property UserName() As String
Get
Return mUserName
End Get
End Property
Public ReadOnly Property PhoneNumberLst() As List(Of String)
Get
Return mPhoneNumberLst
End Get
End Property
End Class
■aspx
<asp:TemplateField HeaderText="氏名">
<ItemTemplate>
<asp:Label ID="LabelUserName" runat="server" Text='<%# Bind("UserName") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="電話番号1">
<ItemTemplate>
<asp:Label ID="LabelPhoneNum1" runat="server" Text='<%# Bind("????????") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="電話番号2">
<ItemTemplate>
<asp:Label ID="LabelPhoneNum2" runat="server" Text='<%# Bind("????????") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="電話番号3">
<ItemTemplate>
<asp:Label ID="LabelPhoneNum3" runat="server" Text='<%# Bind("????????") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
=====================================================================================================
質問内容
=====================================================================================================
上記のクラスをGridViewにバインドしたいと思っています。
電話番号については、リストで管理しています。
リストで管理している電話番号をGridViewの
電話番号1〜3にバインドしたいのですが、方法が分かりません。
たとえば、電話番号リストのGetプロパティを以下のようにした場合、
Public ReadOnly Property PhoneNumberLst(ByVal Index As Integer) As String
Get
If mPhoneNumberLst(Index) IsNot Nothing Then
Return mPhoneNumberLst(Index)
End If
Return ""
End Get
End Property
バインドのコード式に以下記述すると「Bind への呼び出しの形式が適切ではありません。」とエラーがでます。
<asp:Label ID="LabelPhoneNum1" runat="server" Text='<%# Bind("PhoneNumberLst(0)") %>'></asp:Label>
<asp:Label ID="LabelPhoneNum2" runat="server" Text='<%# Bind("PhoneNumberLst(1)") %>'></asp:Label>
<asp:Label ID="LabelPhoneNum3" runat="server" Text='<%# Bind("PhoneNumberLst(2)") %>'></asp:Label>
良い方法が御座いましたらご教示お願いします。
ツイート | ![]() |