Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people, just like you, are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
Solved

Gridview rows

Posted on 2008-06-23
5
451 Views
Last Modified: 2012-06-21
Hi Guys

I have a gridview which has Dataset as datasourse. this sql query on page load will return empty dataset. the code below will generate the first emty row.

I need to be able to click on the Add New link button and rather have the data entered in the textbox be part of the gridview as well as create another emtyp row. this can happen 'n' number of times.
I need to preserve the data from initial entries.




<EmptyDataTemplate>
                <table><tr>
                <td><asp:TextBox ID="txtGoals" runat="server" Columns="10"></asp:TextBox></td>
                <td><asp:TextBox ID="txttactics" runat="server" Columns="10"></asp:TextBox></td>
                <td><asp:TextBox ID="txtResources" runat="server" Columns="10"></asp:TextBox></td>
                <td><asp:TextBox ID="txtOwner" runat="server" Columns="10"></asp:TextBox></td>
                <td><asp:TextBox ID="txtTarget" runat="server" Columns="10"></asp:TextBox></td>
                <td><asp:TextBox ID="txtSd" runat="server" Columns="10"></asp:TextBox></td>
                <td><asp:TextBox ID="txtfd" runat="server" Columns="10"></asp:TextBox></td>
                <td><asp:LinkButton ID="LinkButton3" runat="server" CommandName="AddNew" ForeColor="#FF8000"
                                Width="50px">Add New</asp:LinkButton></td>
                </tr></table>
                </EmptyDataTemplate>

Open in new window

0
Comment
Question by:Mayank_Agarwal
  • 3
  • 2
5 Comments
 
LVL 8

Expert Comment

by:MrAgile
ID: 21861399
0
 
LVL 1

Accepted Solution

by:
Mayank_Agarwal earned 0 total points
ID: 21861430
When i CLick on the or insert button on the gridview i dont want it go in the database. I want it to be inserted as row. then have one SAVE button which saves the whole form.
0
 
LVL 8

Expert Comment

by:MrAgile
ID: 21862636
No problem.

 >>then have one SAVE button which saves the whole form. to what? a database, file??

Also it maybe be helpful if you post WORKING source code with an xml datasource so I can have a look at the page itself.
0
 
LVL 1

Author Comment

by:Mayank_Agarwal
ID: 21862785
Hi
To the database using sperate stored procedures etc.


.....header stuff.......                    
<asp:TemplateField HeaderText="Owner">
                        <EditItemTemplate>
                            <asp:TextBox ID="txtOwner" runat="server" Columns="35" Text='<%# Bind("Owner") %>'
                                TextMode="MultiLine"></asp:TextBox>
                        </EditItemTemplate>
                        <FooterTemplate>
                            <asp:TextBox ID="txtOwner" runat="server" Columns="15"></asp:TextBox>
                        </FooterTemplate>
                        <ItemTemplate>
                            <asp:Label ID="lblOwner" runat="server" Text='<%# Bind("Owner") %>'></asp:Label>
                        </ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText="Start Date">
                        <EditItemTemplate>
                            <asp:TextBox ID="txtStartDateEdit" runat="server" Columns="35" Text='<%# Bind("StartDate") %>'
                                TextMode="MultiLine"></asp:TextBox>
                        </EditItemTemplate>
                        <FooterTemplate>
                            <asp:TextBox ID="txtStartDateIns" runat="server" Columns="10"></asp:TextBox>
                        </FooterTemplate>
                        <ItemTemplate>
                            <asp:Label ID="lblStartDate" runat="server" Text='<%# Bind("StartDate") %>'></asp:Label>
                        </ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText="Finish Date">
                        <EditItemTemplate>
                            <asp:TextBox ID="txtFinishDate" runat="server" Columns="35" Text='<%# Bind("FinishDate") %>'
                                TextMode="MultiLine"></asp:TextBox>
                        </EditItemTemplate>
                        <FooterTemplate>
                            <asp:TextBox ID="txtFinishDate" runat="server" Columns="10"></asp:TextBox>
                        </FooterTemplate>
                        <ItemTemplate>
                            <asp:Label ID="lblFinishDate" runat="server" Text='<%# Bind("FinishDate") %>'></asp:Label>
                        </ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText="Edit" ShowHeader="False">
                        <EditItemTemplate>
                            <asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="True" CommandName="Update"
                                Text="Update" ValidationGroup="partUpdate"></asp:LinkButton>
                            <asp:LinkButton ID="LinkButton2" runat="server" CausesValidation="False" CommandName="Cancel"
                                Text="Cancel"></asp:LinkButton>
                        </EditItemTemplate>
                        <FooterTemplate>
                            &nbsp;<asp:LinkButton ID="LinkButton3" runat="server" CommandName="AddNew" ForeColor="#FF8000"
                                ValidationGroup="AddAnn" Width="50px">Save Plan</asp:LinkButton>
                        </FooterTemplate>
                        <ItemTemplate>
                            <asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="False" CommandName="Edit"
                                Text="Edit"></asp:LinkButton>
                        </ItemTemplate>
                        <ControlStyle ForeColor="#FF8000" />
                    </asp:TemplateField>
                    <asp:CommandField CausesValidation="False" ShowDeleteButton="True">
                        <ControlStyle ForeColor="#FF8000" />
                    </asp:CommandField>
                </Columns>
 
            </asp:GridView>
 
 
 Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
 
           Using myconn As New SqlConnection(connStr)
                Dim cmd As New SqlCommand("select * from PlanDetails where plandetailsID = '999999'", myconn) 'THIS IS A JUNK ENTRY SO 
'THAT I CAN GET THE FOOTER TO SHOW UP. I HAVE TRIED EMPTYTEMPLATE 
'BUT THAT WASNT VERY PRETTY.
                Dim da As New SqlDataAdapter(cmd)
                myconn.Open()
                da.Fill(ds)
                ds.Dispose()
 
                If ds.Tables(0).Rows.Count = 0 Then
                    ds.Tables(0).Rows.Add(ds.Tables(0).NewRow)
                    GridView1.DataSource = ds
                    GridView1.DataBind()
                    Dim columnCount As Integer
                    columnCount = GridView1.Rows(0).Cells.Count
                    GridView1.Rows(0).Cells.Clear()
                    GridView1.Rows(0).Cells.Add(New TableCell)
                    GridView1.Rows(0).Cells(0).ColumnSpan = columnCount
                    GridView1.Rows(0).Cells(0).Text = "Please insert new Plan Details."
                Else
                    GridView1.DataSource = ds
                    GridView1.DataBind()
                End If
End Using

Open in new window

0
 
LVL 8

Expert Comment

by:MrAgile
ID: 21862845
Hi There,

Please post the entire source code. I suggest that you just dummy up some xml as a datasource.

Sean
0

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In an ASP.NET application, I faced some technical problems. In this article, I list them out and show the solutions that I found.  I hope it will be useful. Problem: After closing a pop-up window, the parent page should be refreshed automaticall…
In .NET 2.0, Microsoft introduced the Web Site.  This was the default way to create a web Project in Visual Studio 2005.  In Visual Studio 2008, the Web Application has been restored as the default web Project in Visual Studio/.NET 3.x The Web Si…
Email security requires an ever evolving service that stays up to date with counter-evolving threats. The Email Laundry perform Research and Development to ensure their email security service evolves faster than cyber criminals. We apply our Threat…
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa…

809 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question