Web Forms :: EmptyDataTemplate In Repeater?
Feb 2, 2010how can you create a "EmptyDataTemplate" in a repeater?
View 2 Replieshow can you create a "EmptyDataTemplate" in a repeater?
View 2 RepliesFollowing is some code-behind for a ListView I'm using. Specifically, as the name of the procedure implies, it runs after an image is uploaded and, among other things, saves it to a folder in the project and puts the file name and path in a database table. This all occurs with a button click in either the ItemTemplate or the EmptyDataTemplate. The ItemTemplate updates itself but the EmptyDataTemplate isn't as well-behaved so I have to do a page refresh.
[Code]....
This is all fine and good but I would rather not refresh the page if I'm not operating from EmptyDataTemplate. What would be a good IF statement before the "Response.Redirect(Request.Url.AbsoluteUri)"? It should instruct the page to refresh only when it comes from the EmptyDataTemplate. I've tried all the EditIndex settings I could think of--not sure if the solution should be along those lines or something else.
The situation: a FormView with an EditItemTemplate and an Insert Item Template. When the page is entered and a record exists in the datasource, everything is fine with the Formview in Edit mode and the Edit ItemTemplate being used. But when no record is present, the FormView uses the EmptyDataTemplate even though it was switched it to Insert mode. Here is the code used to switch modes, fired in the OnDataBound event:
protected void SetModeAndHeadings(object sender, EventArgs e)
{
if (FormView1.DataItemCount == 0)
{
FormView1.ChangeMode(FormViewMode.Insert);
}
else
{
FormView1.ChangeMode(FormViewMode.Edit);
}
etc...
}
Is the problem that it switched to Insert mode too late? What has to be done differently here to automatically switch between Edit and Insert modes?
i want to disable some buttons in my emptydata template. i tried using this code but it cant find the control. thus returning an error Specified argument was out of the range of valid values.
Button btnsaveini = (Button)grdNonSerialized.Controls[0].Controls[0].FindControl("btnSave1");
btnsaveini.Enabled = false;
There is user selected search criteria used to display both a FormView (Invoice header information such as ship_id, vendor, date, store, etc...) and cooresponding GridviewDetails (product details such as upc, description, unit cost, qty ordered, qty received, etc...) There is a one to many relationship between 1 invoice (formview) and many product details (gridview). I need to add the ability to insert product details to a particular invoice (ship_id is the link between the 2 tables) if an invoice currently doesn't have any. I have the emptydatatemplate programmed with dropdownlists and textboxes to capture the user entered information along with a submit button. However the insert doesn't occur.
I know the problem is how I am (incorrectly) using the findcontrol, but for the life of me I can't seem to find the correct syntax (been searching the forums for nearly a weeks implementing different syntax and testing to no avail!)
I have successfully implemented the ability to insert a new row using the footertemplate and was banking on some of that code to assist me with the insert of new details in the emptydatetemplate. Grrrrr....still not working. Below is the current version of the test page programming.
Code behind for the OnClick button in the emptydatatemplate "submit": (note: I know at least part of the problem is in how I am attempting to find the controls. Here is where I can not find a syntax that works and I have tried several dozen versions...)
[Code]....
GridviewDetails EmptyDataTemplate programming is below:
[Code]....
I've also included my entire GridViewDetails programming just in case it helps to read what it is that I am trying to do:
[Code]....
And here's the entire code behind that I have so far to make everything else function as desired:
[Code]....
Could someone please point me to a tutorial that explains how to add new records in the ListViews EmptyDataTemplate
View 1 RepliesAll the writeups on ListView's EmptyDataTemplate say that it's for displaying the fact that no data records exist, which is logical; but the bad thing is that I've found nothing as a follow-up. In other words, I haven't been able to find any "now what?" once you (as the site user) find that there aren't any data records. I am led to then ask what the real purpose of the EmptyDataTemplate is if you can't do anything with it.
I added a button called "Add Your Photo" on the EmptyDataTemplate, which activates a ModalPopupExtender with an AsyncFileUpload. All this works fine in terms of uploading the file but nothing happens after that. I wonder if I should be starting instead in the InsertItemTemplate.
So, I need to know how to accomplish a couple of options: I need to start out in either the InsertItemTemplate or the EmptyDataTemplate. If I do the latter, I will need to know how to get from there to the ItemTemplate so the rendering can be displayed.
What code should I use to display the data--that is, how do I move from the EmptyDataTemplate to the ItemTemplate?
I can't seem to get either EmptyDataTemplate or EmptyDataText of a GridView to work. I'm fetching the GridView contents in de codebehind and attaching them with using DataBind(). I've tried having them as null and as an empty List, and in both cases the text I put intoEmptyDataTemplate or EmptyDataText is not displayed. What am I doing wrong?
EDIT (Code snippet) This is my GridView:
<asp:GridView ID="grid" runat="server" EmptyDataText="EMPTY"></asp:GridView>
And I've tried these two for binding the data:
grid.DataSource = new List<object>();grid.DataBind();grid.DataSource = null;grid.DataBind();
There is a page having formview with inserttemplate loading after user authentication. I have created user id = guest. If anyone login with guest i want to be load page FormView with EmptyDataTemplate.
View 11 RepliesI have a grid view (using sqldatasource & C#) which returns no rows. By design asp.net does not show header/footer. I looked at couple of sites and suggestions and found it to be too complex. Nothing was simple. The one I found was to create a empty datatable, insert rows and bind it to the gridview. But that code does notwork for me because I am using sqldatasource and using datatable gives error.I decided to just add the following to empty item template.
<EmptyDataTemplate>
<div>
<asp:Label Text="No details found." runat="server"> </asp:Label>[code]....
THe link shows up in the bottom but the event gridview_RowCommand is not fired as the grid view is not created or it does not have rows
How do I call a function on click the add new link and put all my code in there to insert possibly using a modal popup. I cannot use onclientclick because it is javascript.
I have the following setup, but i would like to make the empty text more specific, so just looking to have it display the same message but with the selected value text from the drop down as part of the messages.
so if you select say the 2nd item from the drop down, then i would like to have the empty label(if empty of course) display "There are No Records for Last 24 hrs"
[Code]....
[Code]....
[Code]....
There have been a few datapaging questions tonight, but mine is a bit different..
I have a regular datapager, in a seperate project it seemed to work fine with the same query and templates, but when I use it in my page, whenever the I try to page I get the emptydatatemplate when there should be data..
Here is my current ListView
[Code]....
I have tried binding data OnPreRender and setting the page properties under the OnPagePropertyChanging events.. still only getting my empty template whenever i navigate through the pages when there should be plenty of data..
I have a DropDownList in the InsertItemTemplate of the DetailsView in EmptyDataTemplate. I want to acces the value of the DropDownList control and insert its value in the empty DataBase.
View 6 Repliescan we assign the values to textbox of Gridview EmptyDataTemplate ? if yes, how can you assign. pls give the coding also.
View 5 RepliesHow to access lable control inside the EmptyDataTemplate in Listview while dataset is empty to show message?
View 6 RepliesI have a curious issue,I am using a combination of asp.net controls with Jquery and am using the JQuery plug called datatables. Instead of applying this to a html table, I applied it to an asp.net gridview. To get it to work, I had to add the thead and tbody tags to the grid like so in the c#:
tablename.UseAccessibleHeader = true;tablename.HeaderRow.TableSection = TableRowSection.TableHeader;
The issue is, is when data is filtered in the table, often there are no results and the emptydatatemplate is used. When this occurs the thead and tbody tags are not in the source outputted by the browser, and an occur occurs and the jquery does not function. Error: 'asSorting' is null or not an objectDoes anyone know a solution? I need to use both the gridview and the jquery datatables ideally.
I often have some controls (like TextBoxes) for input parameters at the top of a page followed by a ListView to show the results.
When submit is hit, the LIstView shows the results using ControlParameters in the SqlDataSource.
My problem is when you first navigate to the page, the EmptyDataTemplate is shown. This can confuse users.
What is the Best Practice for not showing the ListView or EmptyDatatemplate until there has been a Submit button press?
I am using a repeater control and i want to use one more repeater control inside the existing repeater control .
Like this:
<asp:Repeater ID="Repeater1" runat="server"> <HeaderTemplate> </HeaderTemplate>
<ItemTemplate>
<!-- start child repeater --> Here I want to use one repater control <!-- end child repeater -->
</ItemTemplate>
</asp:Repeater>
I can't seem to get either EmptyDataTemplate or EmptyDataText of a GridView to work. I'm fetching the GridView contents in de codebehind and attaching them with using DataBind(). I've tried having them as null and as an empty List, and in both cases the text I put into EmptyDataTemplate or EmptyDataText is not displayed. What am I doing wrong?
EDIT (Code snippet) This is my GridView:
<asp:GridView ID="grid" runat="server" EmptyDataText="EMPTY">
</asp:GridView>
And I've tried these two for binding the data:
grid.DataSource = new List<object>();
grid.DataBind();
grid.DataSource = null;
grid.DataBind();
<EmptyDataTemplate>
<asp:DropDownList ID="ddlRateCode" runat="server" DataSourceID="odsRateCode" DataTextField="RateCode"
DataValueField="RateCodeID" SelectedValue='<%# Bind("RateCodeID") %>'>
</asp:DropDownList>
</EmptyDataTemplate>
The requirement is like the users should enter data and should be able to see the entered data before final save. So, I've taken a gridview and binded it to a temptable which will don't have any data initially, so on the first page load the datasource will be empty and the emptydatatemplate will be shown to the user. On this EmptyDataTemplate I've prepared a dataentry screen where the user can give the information and can save the data. After saving the data the data will go to the temptable and the gridview will get populated with the data the user has entered. For next go, the user can enter records through the gridview footer row. In this way I'm doing my things.
Now I haven't done the validation yet, I wanted to do a validation of the user input on gridview emptydatatemplate and gridview footer as well. In order to do that I've created one Button object on RowDataBound and assigned the gridview emptydatatemplate save button against it and also binded one javascript function with this button like below.
[Code]....
The javascript is working fine and returning boolean values based on the validation done.
But the problem is after I did this validations the RowCommand event of my gridview is not firing. I'm inserting this records on this event only based on the commandname of the button. But if I remove this javascript validation everything works fine for me.
In my detailsview, I have an emptydatatemplate set up to allow users to enter new records. The code works. However, once the record is inserted, the detailsview defaults to a standard insert screen. I know this will cause confusion for the users. I would prefer the detailsview to either show in edit mode or a read-only mode. I have used detailsview.changemode and detailsview.currentmode in the custom sub created for the add new button of the emptydatatemplate- neither of which do what I was hoping. It would be even better if when there was no data, it defaulted to the insert screen (which seems like that should be an easy, no-brainer way for .net to function) but it doesn't. Or, I don't know how to accomplish it.
I don't want to force the user to click cancel after inserting an item through the emptydatatemplate just to be able to use the detailsview for other records.
[Code]....
But i can not see "no result found". Why? I am using .net 3.5! The same with emptydatatext...
As pointed out in the question:
EmptyDataTemplate and EmptyDataText not working in GridView
using CSS-Friendly Control Adapters removes the data that would would be populated by EmptyDataTemplate or specified in EmptyDataText in GridView. One of the solutions is to disable the addapters for GridView components as specified in this answer Is there a solution, that would allow to keep the use of CSS-Friendly Control Adapters for GridView and still take advantage of EmptyDataTemplate functionality?
is it possible to access public page variables from ListView.EmptyDataTemplate ?
View 1 Replies