2013-02-04 3 views
1

GridView를 사용하고있는 곳에서 내 과제와 관련된 질문이있었습니다. 내 프로그램을 실행할 때 GridView가 작동하지 않아 왜 이런 일이 발생하는지 알 수 없습니다. 이미 데이터베이스를 구성했고 모든 것이 잘되어 있습니다. 나는 이것에 약간 도움을 정말로 바르게 평가할 것입니다. 여기 프로그램을 실행할 때 GridView가 표시되지 않습니다.

내 소스 코드입니다 : 당신은 GridView1.DataSource = SqlDataSource1; 을 제공해야하고

<%@ Page Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="ProductMaintenance.aspx.cs" Inherits="ProductMaintenance" Title="Untitled Page" %> 

<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server"> 
    <style type="text/css"> 
     .style2 
     { 
      width: 125px; 
     } 
     .style3 
     { 
      width: 182px; 
     } 
    </style> 
</asp:Content> 
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server"> 
    <p> 
     <h3 style="font-size: larger">Product Maintenance</h3><br /> 
     <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" 
      EnableSortingAndPagingCallbacks="True" Width="664px" 
         onrowdeleted="GridView1_RowDeleted" onrowupdated="GridView1_RowUpdated"> 
     </asp:GridView> 
     <br /> 
     <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
      ConnectionString="<%$ ConnectionStrings:TechSupport_DataConnectionString %>" 
      DeleteCommand="DELETE FROM Products WHERE (ProductCode = @Original_ProductCode) AND (Name = @Original_Name) AND (Version = @Original_Version) AND (ReleaseDate = @Original_ReleaseDate)" 
      InsertCommand="INSERT INTO Products(ProductCode, Name, Version, ReleaseDate) VALUES (@ProductCode, @Name, @Version, @ReleaseDate)" 
      SelectCommand="SELECT ProductCode, Name, Version, ReleaseDate FROM Products" 
      UpdateCommand="UPDATE Products SET Name = @Name, Version = @Version, ReleaseDate = @ReleaseDate WHERE (Name = @original_Name) AND (Version = @original_Version) AND (ReleaseDate = @original_ReleaseDate) AND (ProductCode = @original_ProductCode)"> 
      <DeleteParameters> 
       <asp:Parameter Name="Original_ProductCode" /> 
       <asp:Parameter Name="Original_Name" /> 
       <asp:Parameter Name="Original_Version" /> 
       <asp:Parameter Name="Original_ReleaseDate" /> 
      </DeleteParameters> 
      <UpdateParameters> 
       <asp:Parameter Name="Name" /> 
       <asp:Parameter Name="Version" /> 
       <asp:Parameter Name="ReleaseDate" /> 
       <asp:Parameter Name="original_Name" /> 
       <asp:Parameter Name="original_Version" /> 
       <asp:Parameter Name="original_ReleaseDate" /> 
       <asp:Parameter Name="original_ProductCode" /> 
      </UpdateParameters> 
      <InsertParameters> 
       <asp:Parameter Name="ProductCode" /> 
       <asp:Parameter Name="Name" /> 
       <asp:Parameter Name="Version" /> 
       <asp:Parameter Name="ReleaseDate" /> 
      </InsertParameters> 
     </asp:SqlDataSource> 
     <br /> 
     To add a new product, enter the product information and clck Add product.<br /> 
     <asp:Label ID="lblError" runat="server" ForeColor="Red"></asp:Label> 
     <br /> 
     <table class="style1"> 
      <tr> 
       <td class="style2"> 
        Product code:</td> 
       <td class="style3"> 
        <asp:TextBox ID="txtProductCode" runat="server"></asp:TextBox> 
       </td> 
       <td> 
        <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" 
         ControlToValidate="txtProductCode" 
         ErrorMessage="Product code is a required field"></asp:RequiredFieldValidator> 
       </td> 
      </tr> 
      <tr> 
       <td class="style2"> 
        Name:</td> 
       <td class="style3"> 
        <asp:TextBox ID="txtName" runat="server"></asp:TextBox> 
       </td> 
       <td> 
        <asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" 
         ControlToValidate="txtName" ErrorMessage="Name is a required field"></asp:RequiredFieldValidator> 
       </td> 
      </tr> 
      <tr> 
       <td class="style2"> 
        Version:</td> 
       <td class="style3"> 
        <asp:TextBox ID="txtVersion" runat="server"></asp:TextBox> 
       </td> 
       <td> 
        <asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server" 
         ControlToValidate="txtVersion" ErrorMessage="Version is a required field"></asp:RequiredFieldValidator> 
       </td> 
      </tr> 
      <tr> 
       <td class="style2"> 
        Release date:</td> 
       <td class="style3"> 
        <asp:TextBox ID="txtReleaseDate" runat="server"></asp:TextBox> 
       </td> 
       <td> 
        <asp:RequiredFieldValidator ID="RequiredFieldValidator4" runat="server" 
         ControlToValidate="txtReleaseDate" 
         ErrorMessage="Release date is a required field"></asp:RequiredFieldValidator> 
       </td> 
      </tr> 
     </table> 
     <br /> 
     <asp:Button ID="btnAdd" runat="server" Text="Add Product" Width="130px" 
     onclick="btnAdd_Click" /> 
    </p> 
</asp:Content> 
+0

확인 ... http : //stackoverflow.com/questions/10288800/gridview-in-asp-net-is-not-displaying-with-or-without-data –

+0

@ user1976537 : AutoGenerateColumns = "False"이고 템플릿 열이나 바운드 필드를 정의하지 않아 화면에 데이터가 표시되지 않는 이유를 표시합니다. AutoGenerateColumns = "True"로 설정하거나 gridview에서 열을 정의하여 화면에 표시되도록합니다. –

답변

0

처음에는 그런 AutoGenerateColumns = true

확인

protected void Page_Load(object sender, EventArgs e) 
{ 
    GridView1.DataBind(); 
} 
0

GridView1.DataBind();Page_Load에서 이벤트 이후

AutoGenerateColumns를 true로 설정하거나 표시 할 Bound 또는 TemplateFields로 열을 제공해야합니다.

또는 AutoGenerateColumns="True"은 데이터를 표시하고 열을 생성합니다. 표시되는 내용을 사용자 정의해야 할 수도 있습니다. 이렇게하려면 디자인보기로 전환하고 gridview 템플릿을 편집 할 수 있습니다. 당신이 AutoGenerateColumns를 설정 때문에

0

는 = "거짓", 당신은 당신이 AutoGenerateColumns = "True"로

또 다른 일을 설정해야 다른

<Columns> 
<asp:BoundField .... 
    . 
    . 
    . 
    . 
</Columns> 

나처럼 열을 추가해야합니다 : 당신은을 할당하는 것을 잊었다 GridView에 대한 DataSourceID.

당신은의 GridView 태그 내부에 다음과 같은 속성이 있어야합니다

DataSourceID = "SqlDataSource1" 

를 내가 당신을 도움이되기를 바랍니다.

관련 문제