2017-03-31 2 views
0

Ich bin ein Front-End-Entwickler, mit einem VB-Entwickler arbeitet eine Web-Anwendung erstellen für Datenfelder eingeben: Namen, Ziele und Fälligkeiten.Editierbare Tabelle/grid in asp.net mit VB

Unser Kunde möchte, dass die Daten wie in einem Excel-Arbeitsblatt eingegeben werden: durch mehrere Felder navigieren und die Daten eingeben. Und dann werden diese eingegebenen Daten als Gitter oder Tabelle an anderer Stelle zum Anzeigen/Genehmigen ausgegeben.

Ich arbeite meist in CSS/JS/PHP, und ich bin ziemlich neu in .ASPX. Wir arbeiten in einem .NET 4.0 Framework mit VB, das auf dem Back-End ausgeführt wird, um eine Verbindung zu SQL Server herzustellen. Auf dem Frontend haben wir .ASPX Web Forms zusammen mit CSS/JS. Hinweis

Bitte: das ist NICHT ein MVC oder Core Rahmen, aber eine ältere 4.0 .NET Framework.

Wir haben mehrere Optionen ausprobiert, aber keines davon funktioniert so, wie es unser Kunde möchte. Ich habe dies sowohl als <asp:Table> mit Zeilen von <input> Felder und auch als <table> von <asp:TextBox> Eingabefelder versucht. Aber wir sind in beide Richtungen auf Probleme gestoßen. Wir haben auch versucht, eine <asp:GridView>, aber das hat auch nicht funktioniert. Es war nur Lesezugriff, nicht editierbar. Und Sie können nur eine Zeile nach der anderen bearbeiten. Der Kunde wollte, dass die gesamte Tabelle/das Raster bearbeitet werden kann. Beispielcode für einen unten. Das Problem dabei ist, dass jede ID einen anderen Namen hat: TextBox1, TextBox2, usw. Und das funktioniert nicht für die VB, um Datensätze in der Datenbank zu speichern.

Hat jemand eine ähnliche Webanwendung erstellt? Was hat für dich funktioniert?

<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server"> 
<div class="obj-table"> 
     <table> 
      <tr> 
       <td> 
        <asp:Label ID="Label1" CssClass="label name" runat="server" Text="Name"></asp:Label></td> 
       <td> 
        <asp:Label ID="Label2" CssClass="label" runat="server" Text="Objective"></asp:Label></td> 
       <td> 
        <asp:Label ID="Label3" CssClass="label" runat="server" Text="Due Date"></asp:Label></td> 
       <td> 
        <asp:Label ID="Label4" CssClass="checkbox" runat="server" Text="Approved"></asp:Label></td> 
      </tr> 
      <tr> 
       <td> 
        <asp:TextBox ID="Name" CssClas="textbox" runat="server"></asp:TextBox> 
       </td> 

       <td> 
        <asp:TextBox ID="Descrp" CssClas="textbox" runat="server"></asp:TextBox> 
       </td> 

       <td> 
        <asp:TextBox ID="DueDate" CssClas="textbox" runat="server"></asp:TextBox> 
       </td> 

       <td> 
        <asp:CheckBox ID="CheckBox" runat="server"/> 
       </td> 

       <%-- use this for when we need a drop down menu 
       <td> 
        <asp:DropDownList ID="DropDown" runat="server"></asp:DropDownList> 
       </td>--%> 
      </tr> 
      <tr> 
       <td> 
        <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> 
       </td> 

       <td> 
        <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox> 
       </td> 

       <td> 
        <asp:TextBox ID="TextBox3" runat="server"></asp:TextBox> 
       </td> 

       <td> 
        <asp:CheckBox ID="CheckBox1" runat="server"/> 
       </td> 
      </tr> 
      <tr> 
       <td> 
        <asp:TextBox ID="TextBox4" runat="server"></asp:TextBox> 
       </td> 

       <td> 
        <asp:TextBox ID="TextBox5" runat="server"></asp:TextBox> 
       </td> 

       <td> 
        <asp:TextBox ID="TextBox6" runat="server"></asp:TextBox> 
       </td> 

       <td> 
        <asp:CheckBox ID="CheckBox2" runat="server"/> 
       </td> 
      </tr> 
     </table> 
</div> 

Antwort

0

Sie können die Rasteransicht Element verwenden, die gewünschten Operationen synchron mit asp SQL-Datenquellenobjekt

+0

Dank Amin automatisieren, haben wir versucht, die ursprünglich das, aber nicht wie die Gridview Sie können nur jeweils eine Zeile bearbeiten. Wenn Sie versuchen, eine andere Art der Eingabe der Daten zu finden, könnte GridView für die Ausgabe geeignet sein. –

+0

Sie müssen also so viele Elemente wie Sie möchten in der gleichen Zeit bearbeiten? –

+0

Ja, wir konnten tatsächlich ein Array erstellen und ein GridView mit Vorlagenfeldern senden, die Textfelder enthalten. das scheint zu funktionieren. Vielen Dank. –