之前我做了以下的GridView
正在展示正確的,所以我將描述的變化,萬一有人已經在此之前咬傷。我的asp.net GridView中不再顯示
我將GridView
的datasource
從「cContact」更改爲「cParticipant」。 cContact是一個本地班。但cParticipant是被引用項目中的一個類。然而,被引用的項目正在解決方案中。 這裏是cParticipant:
<DataContract()>
Public Class cParticipant
<DataMember()> Public Property DeptPK As Integer
<DataMember()> Public Property DistrictCompanyName As String = ""
<DataMember()> Public Property ParticipantID As String
<DataMember()> Public Property Firstname As String = ""
<DataMember()> Public Property Lastname As String = ""
<DataMember()> Public Property BusinessEmail As String = ""
<DataMember()> Public Property BusinessPhone As String = ""
<DataMember()> Public Property PersonalCellPhone As String = ""
<DataMember()> Public Property PersonalEmail As String = ""
<DataMember()> Public Property RetainContact As Boolean = True
End Class
我不得不做cParticipant及其成員的一些重命名的同時,很遺憾。但我已經徹底搜索了舊名稱並確保每個實例都隨時更名。我仔細檢查過,新名稱出現在標記中的asp:BoundField DataField="aField"
條目中。
而且,每場在標記所提到的,沒有被排斥在外。
Default.aspx中的設計視圖中,GridView
出現,而且它有5行示出了「數據綁定」在每個小區中。
在邊緣的F12開發人員工具,我看到「行」將出現在的地方,但在GridView
應該是,它只是<div></div>.
添加成員列表後,我綁定參加者列表中在GridView
:
Dim C As New cParticipant
C.DeptPK=1
....
Participants.Add(C)
grdParticipantList.DataSource = Participants
grdParticipantList.DataBind()
「參與者」 是當地的公共財產在Default.aspx.vb:
Public Property Participants() As List(Of cParticipant)
Get
Dim temp As Object = Session("Participants")
Return If(temp Is Nothing, Nothing, _
DirectCast(temp, List(Of cParticipant)))
End Get
Set(ByVal value As List(Of cParticipant))
Session("Participants") = value
End Set
End Property
UP DATE:我在頁面上拋出另一個gridview並將數據綁定到它。它顯示。所以我的標記一定有問題。
下面是壞的和新的一個正常工作的代碼:
<div style="padding-top:20px;padding-bottom:50px;">
<div class="row">
<div class="col-lg-12 ">
<asp:GridView ID="grdParticipantList" runat="server" EnableViewState="true" DataKeyNames="ParticipantID" AutoGenerateColumns="false"
HeaderStyle-BackColor="CornflowerBlue" HeaderStyle-ForeColor="White" CellPadding="4" Width="100%"
EmptyDataText="List of participants is currently empty." CssClass="table-hover">
<Columns>
<asp:BoundField DataField="ParticipantID" HeaderText="ID" Visible="false" SortExpression="ID" HeaderStyle-CssClass="visible-lg" ItemStyle-CssClass="visible-lg" />
<asp:BoundField DataField="DeptPK" HeaderText="DeptPK" Visible="false" HeaderStyle-Width="0" ItemStyle-Width="0" SortExpression="DeptPK" />
<asp:BoundField DataField="DistrictCompanyName" HeaderText="District/Company" SortExpression="District" HeaderStyle-CssClass="visible-lg" ItemStyle-CssClass="visible-lg" />
<asp:BoundField DataField="Firstname" HeaderText="First Name" SortExpression="FName" ItemStyle-CssClass="visible-lg" HeaderStyle-CssClass="visible-lg" />
<asp:BoundField DataField="Lastname" HeaderText="LastName" SortExpression="LName" ItemStyle-CssClass="visible-lg" HeaderStyle-CssClass="visible-lg" />
<asp:BoundField DataField="BusinessEmail" HeaderText="Business Email" SortExpression="EmailB" ItemStyle-CssClass="visible-lg" HeaderStyle-CssClass="visible-lg" />
<asp:BoundField DataField="BusinessPhone" HeaderText="Business Phone" SortExpression="PhoneB" HeaderStyle-CssClass="visible-lg" ItemStyle-CssClass="visible-lg" />
<asp:BoundField DataField="PersonalEmail" HeaderText="Personal Email" SortExpression="EmailP" ItemStyle-CssClass="visible-lg" HeaderStyle-CssClass="visible-lg" />
<asp:BoundField DataField="PersonalCellPhone" HeaderText="Personal Phone" SortExpression="PhoneP" HeaderStyle-CssClass="visible-lg" ItemStyle-CssClass="visible-lg" />
<asp:BoundField DataField="RetainContact" HeaderText="Retain Info" Visible="false" SortExpression="RC" HeaderStyle-CssClass="visible-lg" ItemStyle-CssClass="visible-lg" />
<asp:TemplateField HeaderText="Retain Info" SortExpression="RC">
<ItemTemplate><%#IIf(Boolean.Parse(Eval("RetainContact").ToString()), "Yes", "No")%></ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</div>
<asp:GridView ID="GridView1" runat="server"></asp:GridView>
只是一個提示,沒有人真的在培養後回頁喜歡這個了和用戶不喜歡它。你有沒有考慮過使用AJAX而不是JSON而不是XML?現在Web應用程序是JS,而服務器調用是通過Web服務完成的,所以不存在回發。 –
你也可能想看看ASP MVC範例。 –