Insert-Button GridView/DetailsView

keks1984

Erfahrenes Mitglied
Morgen @all,

ich hab ein Problem mit der GridView ich lasse mir für die Bearbeitung der Daten in der GridView, eine DetailsView anzeigen. Zum löschen habe ich direkt in der GridView einen Button welcher dann sofort löscht.

SO nun zur Frage ich hätte jetzt gern einen Insert-Button welcher außerhalb der GridView ist. Dieser Insert-Button sollte am besten die DetailsView aufrufen und dann eine neue Zeile in der GridView einfügen. Wie gehts das? :confused:

Bis jetzt muß der Benutzer einen Datensatz aufrufen und in der DetailsView gibts dann ein Insert-Button. Das find ich etwas umständlich und auch unverständlich für den Benutzer.

Hier ist mein aspx Code:

<asp:GridView ID="Grid_LKWArt" runat="server" AutoGenerateColumns="false" DataSourceID="DS_LKW" Enabled="false" Visible="False" AllowPaging="True" BackColor="Transparent" BorderColor="Black" ForeColor="Black" HorizontalAlign="Justify" OnRowDataBound="Grid_RowDataBound" BorderStyle="Inset" DataKeyNames="Id" EmptyDataText="<% $Resources:message, adminauswahl_Leer%>" AutoGenerateSelectButton="true" >
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:LinkButton ID="LinkButton2" runat="server" CausesValidation="False"
CommandName="Delete" OnClientClick="return confirm('Sollen die Daten wirklich gelöscht werden?');" Text="<% $Resources:message, loeschen %>" ForeColor="black"/>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="Id" HeaderText="<%$ Resources:message, adminauswahl_Id %>" ReadOnly="True"/>
<asp:TemplateField HeaderText="<% $Resources:message, adminauswahl_Bezeichnung %>" SortExpression="Bezeichnung">
<ItemTemplate><asp:Literal runat="server" Text='<%# GetMessage(Eval("Bezeichnung"))%>' />
</ItemTemplate>
</asp:TemplateField >
</Column>
<HeaderStyle BackColor="Silver" BorderStyle="Inset" />
</asp:GridView>

<asp:SqlDataSource ID="DS_LKW" runat="server" ConnectionString="<%$ ConnectionStrings:connectionString %>" SelectCommand="SELECT [Id], [Bezeichnung] FROM [LKWArt]" DeleteCommand="DELETE FROM [LKWArt] WHERE [Id] = @Id">
<DeleteParameters>
<asp:parameter Name="Id" Type="Int32" />
</DeleteParameters>
</asp:SqlDataSource>

<asp:detailsView ID="Details_LKWArt" runat="server" DataKeyNames="Id" DataSourceID="DS_DetailsLKWArt" AutoGenerateEditButton="True" AutoGenerateInsertButton="True" AutoGenerateRows="False" BorderColor="Black" BorderStyle="Inset">
<Fields>
<asp:BoundField DataField="Bezeichnung" HeaderText="Bezeichnung" SortExpression="Bezeichnung" />
</Fields>
</asp:detailsView>

<asp:SqlDataSource ID="DS_DetailsLKWArt" runat="server" ConnectionString="<%$ ConnectionStrings:connectionString %>" InsertCommand="INSERT INTO [LKWArt] ([Bezeichnung]) VALUES (@Bezeichnung)" UpdateCommand="UPDATE [LKWArt] SET [Bezeichnung]=@Bezeichnung WHERE [Id] = @Id" SelectCommand="SELECT * FROM [LKWArt] WHERE ([Id] = @Id)" FilterExpression="Id={0}" OnInserted="On_Inserted_LKWArt" OnUpdated="On_Updated_LKWArt">
<FilterParameters>
<asp:ControlParameter Name="Id" ControlId="Grid_LKWArt" PropertyName="SelectedValue" />
</FilterParameters>
<UpdateParameters>
<asp:parameter Name="Bezeichnung" Type="String" />
<asp:parameter Name="Id" Type="Int32" />
</UpdateParameters>
<SelectParameters>
<asp:ControlParameter ControlID="Grid_LKWArt" Name="Id" PropertyName="SelectedValue" Type="Int32" />
</SelectParameters>
<InsertParameters>
<asp:parameter Name="Bezeichnung" Type="String" />
</InsertParameters>
</asp:SqlDataSource>

SO ich freu mich auf HILFE Danke
 

Neue Beiträge

Zurück