Forms Data Controls :: Make Specific Cells In A Dynamic Gridview Clickable And Capture The Cell Info Before Redirecting
Aug 3, 2010
I generate dynamic grids based on a count value returned from some DB tables. the code for it goes like this : I give and Id to each grid that is generated.
if (myDataList1.Count >= 1)
{
for (int i = 0; i < myDataList1.Count; i++)
{
//retrieving the exact i count from pageload
ViewState.Add("newCount", i);
//creating the dynamic grid with its corresponding gridview properties.
grvDynamic = new GridView();
grvDynamic.ID = "GridView" + (i+3);
grvDynamic.AutoGenerateColumns = false;
grvDynamic.RowCreated += GridViewRowCreated;
grvDynamic.RowDataBound += grvDynamic_RowDataBound;
//adding bound field columns to retrieve data from stored proc
BoundField metric = new BoundField();
metric.HeaderText = "Goal ";
metric.DataField = "metric";
grvDynamic.Columns.Add(metric);
BoundField mtd = new BoundField();
mtd.HeaderText = "MTD";
mtd.DataField = "value_MTD";
grvDynamic.Columns.Add(mtd);
BoundField goal = new BoundField();
goal.HeaderText = "Tier Level Achieved";
goal.DataField = "value_goal";
goal.HeaderStyle.Width = Unit.Percentage(10);
grvDynamic.Columns.Add(goal);
BoundField you1 = new BoundField();
you1.HeaderText = "Month End";
you1.DataField = "firstLevel_you";
grvDynamic.Columns.Add(you1);
BoundField you2 = new BoundField();
you2.HeaderText = "Month End";
you2.DataField = "secondLevel_you";
grvDynamic.Columns.Add(you2);
ButtonField singleClick = new ButtonField();
singleClick.CommandName = "clickHyperlink";
singleClick.Visible = false;
grvDynamic.Columns.Add(singleClick);
BoundField metricId = new BoundField();
metricId.HeaderText = "Metric Id";
metricId.DataField = "metricID";
metricId.Visible = true;
grvDynamic.Columns.Add(metricId);
//binding the gridview to data.
grvDynamic.DataSource = data;
grvDynamic.DataBind();
grvDynamic.Columns[5].Visible = false;
}
}
protected void grvDynamic_RowDataBound(object sender, GridViewRowEventArgs e)
{
//this basically gets the metric Id's of rows with the ishyperlink flag set to 'Y'. I need to make these particular cells clickable var isClickable = (from md in myDataList3 where md.IsHyperLinkFlag == 'Y' &&
md.value_MTD != null select md.metricID).ToList();
if (e.Row.RowType == DataControlRowType.DataRow)
{
// Get reference to button field in the gridview.
LinkButton _singleClickButton = (LinkButton)e.Row.Cells[5].Controls[0];
if (isClickable.Contains(Convert.ToInt32(e.Row.Cells[6].Text)))
{
e.Row.Cells[1].Style["cursor"] = "hand";
e.Row.Cells[1].Style["color"] = "blue";
e.Row.Cells[1].Style["textdecoration"] = "Underline";
e.Row.Cells[1].Attributes.Add("onClick", "window.location ='../HeaderPages/page2.aspx' ");
}
}
}
This code works perfectly fine , depending on the ishyperlink flag in the database...specific cells in the grid are made clickable and then redirected to page2.aspx My Issue: I need to capture which specific cell in which specific grid the user has clicked. store some information in sessions based on the cell clicked and use that information in page2.aspx.
View 5 Replies
Similar Messages:
Sep 9, 2010
i have gridview and im displaying the employement history of employee.and im providing a hyperlink in empid to open employee page with update mode ..so that user can update the record.i have an issue here.only if the employeeresigned = "N" empid should be hyperlink, if its "Y" it should not be a hyperlink.
<asp:TemplateField
HeaderText="empid"
SortExpression="empid"> [code]....
am wondering how to do this
1) shall i replace all the linkbutton with label if the resignedstatus = "Y"
- how to do this? 2) or shall i make the empid as boundfields instead of templatefields and write code on rowbound...with checkin that
if resigned =
"Y" then
e.Row.Cells(0).BackColor = Drawing.Color.blue
e.Row.Cells(0).Attributes.Add("onclick", "empDetails_disp")
e.Row.Cells(0).Attributes.Add("class", "statusclass")
......
in this case i can use only javascript function for
e.Row.Cells(0).Attributes.Add("onclick", "empDetails_disp")
this statement? or can i directly call my empdetials_disp function in my aspx.vb page...
View 5 Replies
May 21, 2010
How do you make a gridview(asp.net 3.5) clickable? In other words how can I make it so that I can select a row in the grid? In fact click on any row.
View 10 Replies
Apr 9, 2010
I have a gridview that has both a select and an update statement. One of the cells is a date cell, and the other is for numerics only. Is there a way I can do this? At the moment, anything can be keyed into the cells and this results in an error as my update stored procedure expects a date value and a numeric value respectively.
View 2 Replies
Mar 11, 2011
I have a situation where i need to update my Dropdownlist templatefield inside a GridView....but only for a specific cell. I have seen codes like this to loop through the whole GridView and update every rows in a specific column, but how do i do it if i only want to update one specific cell ? (If i know the index information of the cell, for example, I know i want to update the dropdownlist on Column 3 and Row 2)
foreach (GridViewRow row in GridView1.Rows)
{
if (row.RowType == DataControlRowType.DataRow)
{
this.WorkTypeDDL = ((DropDownList)row.FindControl("WorkTypeList"));
this.WorkTypeDDL.DataSource = AL;
this.WorkTypeDDL.DataBind();
//more codes blah blah blah//
}
}
View 3 Replies
Dec 8, 2013
In my gridview i have
I have a dropdownlist with tables. if i select the table, based on the columns the gridview displays.
One table contains 9 columns and other contains 40 columns... for example....see the below.
Insert/Edit RoleUID RoleID Role Desc ....etc columns
Here RoleId, role are mandatory fields... i am making those two with "*" red color. but if i click on the "INSERT" then i need to get a alert msg that the roleid is mandatory.. you should enter in interger value, and if "role" is null then same like "Role is mandatory... plz enter character value"
I don't have any template fields in the gridview. i make autogeneratecolumns=true in my grid.
I need validation for the dynamic gridview cell... where there is no columns fixed...
I used the below code ... for INSERT
for (int j = 3; j < cellCount; j++) {
View 1 Replies
Mar 10, 2010
I am banging my head with gridview at the moment. There's a problem I just can't get my head around. I'd be very greatful for any advice given. I have a function that creates a DataTable with three columns and four rows. In each of the cells I set the text to a random number through RowDataBound event. I would like to just make the cell clickable and have a code-behind function that gets the position of the cell (column, row) and the value of the cell when the user clicks it.
View 3 Replies
Jun 9, 2010
I have a gridview which i bind to DataView. I need to manipulate text on cell[2] of each row. I was wondering if i could do it in the OnRowCreated event? cell[0] in asp looks like this
<asp:ButtonField DataTextField = "header" CommandName="select" HeaderText="Overskrift"/>
This doesnt work. test = null
protected void onrowcreated(object sender, GridViewRowEventArgs e)
{
TableCellCollection cells = e.Row.Cells;
string test = cells[2].Text;
}
View 2 Replies
Feb 24, 2010
My GridView rows have a field for a server timestamp when a person entered in a particular state(like idle). I want to show the time elapsed since the person has been in that particular state. That I want to show as a tooltip when mouse is hovered over the cell and time elapsed calculation I want to do on client side only without a roundtrip to the server. In RowDataBound event of the GridView I add functions to the show and hide the tooltip by following some examples on the web. In the JavaScipt function, I calculate the time elapsed. But it works first time but not after that somehow and I get a JScript error "Microsoft JScript runtime error: Function expected." on this line:
document.getElementById("td0").innerText = elapsedpretty(timeInState);
My GridView is inside a user control which is used as a ASP.NET web part and my web part zones are inside ASP.NET UpdatePanel. Could it cause a problem?
View 4 Replies
Apr 19, 2010
I have the below code in a user control used at many places in my website.I want the whole control to behave as a hyperlink and redirect to the 'Testimonial page'.How can I accomplish it?
<div id="divRndTesti" class="testimonials-inner" runat="server" >
<asp:Repeater ID="repTesti" runat="server">
<ItemTemplate>
<p><%# Truncate(Eval("TestmlDescription").ToString(), 100, true)%></p>
<span><strong><%#Eval("UserName")%></strong>
<br /><%#Eval("UserState")%>, <%#Eval("UserCntry")%></span>
</ItemTemplate>
</asp:Repeater>
</div>
View 3 Replies
Oct 27, 2010
im just trying to use this answer, but im getting an error on my page:
"A field or property with the name 'returnantID' was not found on the selected data source."
Im not really sure what the "returnantID" is but it appears my page isn't liking it, not sure if i was sopposed to cswap it out for some other data or not.
This is my current gridview:
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" GridLines="None"
DataSourceID="ObjectDataSource1">
<Columns>
<asp:BoundField DataField="ProductName" HeaderText="ProductName"
SortExpression="ProductName" />
<asp:BoundField DataField="Price" DataFormatString="{0:c2}" HeaderText="Price"
SortExpression="Price" />
<asp:BoundField DataField="Length" HeaderText="Length"
SortExpression="Length" />
<asp:BoundField DataField="Engine" HeaderText="Engine"
SortExpression="Engine" />
<asp:BoundField DataField="Colour" HeaderText="Colour"
SortExpression="Colour" />
<asp:BoundField DataField="Description" HeaderText="Description"
SortExpression="Description" />
</Columns>
</asp:GridView>
would just like the ProductName to link to the corresponding products page(using its Id)
p.s this is what i tried:
<asp:HyperLinkField DataNavigateUrlFields="returnantID" DataNavigateUrlFormatString="Details.aspx?id={0}" DataTextField="ProductName" NavigateUrl="Details.aspx" />
**Update** I changed the "returnantID" to "ProductName" which turned the name of my product into a link but clicking that link gave me this new error:
Input string was not in a correct format.
View 5 Replies
Jul 15, 2010
me how can i make each cell of a gridview selectable(Web Project)?
Basically my requirement is to do some action when i select a cell without having postback. And I am not allowed to use ajax or jquery here. how can i do this using only asp.net gridview and javascript(possibly).
For Example, i want to make some control visible/invisible or enable/disable based on the cell selected.
View 3 Replies
Oct 1, 2010
[Code]....
how do i get cell info from the GridViewRowEventArgs
View 4 Replies
Aug 16, 2010
I'd like to make some words of a cell in gridview Bold. For example - "MRN No.: SI0021848 Name: Cherry" like my attachment. I could query this field value from database but don't know how to make some words Bold. How to do it?
View 2 Replies
Jun 15, 2010
i was wondering if it is possible to make a gridview show only specific fields according to other fields in the grid view....
such as showing a button for one row but not the other due to different field values
View 3 Replies
May 27, 2010
My doubt is how to make a list of titles of the news contained in a database. And this list each of the titles when clicked is redirected to a page where you will be able to view the news in full (Title, Body, Author).
What I got:
- A database containing a table with the news, every news is associated with an identification code (ex: "ID").
- A page where you will make the listing. (Ex: site / listofnews.aspx)
- I have a page that uses the method "querystring" to know what is the primarykey the news. (Ex: site/shownews.aspx?ID=12345, where "12345" is the primarykey of the news. Once it knows what is the primarykey of the news in the database, it loads each of the fields of the page (news.aspx) with
the news, this part is working ok.
- The data is retrieve using the Linq, so I receive a List of "News", the class "News" as ID, Title, Body, Author.. My doubt is how to make the listing clickable.
In php I used this method (make a list of html links, in each link the href field is changed so that the tag "id" coincides with the news):
[Code]....
How do i make the same with asp.net?
View 2 Replies
Mar 10, 2011
I am making one pointing web application. There are different Points like 20 Points, 50 Points, 75 Points,etc. These are saved in Database.This Points are belongs to some Vendors. Customer will take the Points from Vendors.want to show the summary in gridview like how many customer use 20 points, how many customer use 75 Points, etc.I want the Gridview Like below
Vendor Name 20 Points 50 Points 75 Points
ABC 5 7 8
XYZ 10 16 5
First Question, How can I represent the data in the above way?Second Question, If I add one more point like 100 Points, then how the one more column will come like below:
Vendor Name 20 Points 50 Points 75 Points 100 Points
ABC 5 7 8
4
XYZ 10 16 5
16
View 5 Replies
Nov 16, 2010
I am using VS2003. How do I get specific cell of datagrid?
View 2 Replies
Mar 4, 2011
No sense in showing a competely blank column. how to make a GridView column invisible if every cell in that column is empty?
View 3 Replies
Feb 21, 2011
There are two fields and a button :
1)text box for the caption.
2)drop down list to select the control to be added.
3)button is an ADD button .
when the "ADD" button is clicked the text entered in the "caption" text box has to appear in the first cell of the first row in the table and the control selected from the dropdown list has to be added to the second cell of the same row. similarly many such captions and controls have to be dynamically addded to the successive rows of the table as per user selection ( note: the previously selected control and caption label must persist on furthur selections .
how do i go about the adding controls and the text into the table part ?
View 5 Replies
Apr 30, 2010
I have a grid view populated with some data included bit fields and I made an export to excel function For each row i need to check the cell with the bit value to change the cell color, but the cell is always empty, even if is the field is set to False or True. foreach (GridViewRow row in gv.Rows)
View 2 Replies
Feb 11, 2010
I'm having a weird problem where the GridView cell that I'm programmatically updating turns grey, and throws a null error when attempting to save row. I have been searching all day and have not been able to find a solution. I'm guessing there is a problem with my code, so here it is:
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
View 5 Replies
Apr 18, 2010
Was working fine and all of a sudden I can't click my column any more!??
Here's the code...[Code]....
View 2 Replies
Aug 3, 2012
I have a gridview which displays a list of submittted applications with a column that contains an edit link.
<asp:TemplateField HeaderText="Status">
<ItemTemplate>
<asp:LinkButton ID="lnkBtnEdit" runat="server" CommandArgument = '<%# Eval("appID")%>' Text = "Edit" OnClick = "editApp" />
</ItemTemplate>
</asp:TemplateField>
I want to hide the link button if the status (value 1 or 0) of the form is set to 1. Here is the code I am trying to use.
Protected Sub gv1_RowDataBound(sender As Object, e As GridViewRowEventArgs)
If e.Row.RowType = DataControlRowType.DataRow Then
'get the cell cell value
Dim status As Integer
[code]....
I think my mistake lies in getting the status value (as it ouputs 0 for every application).
View 1 Replies
Mar 14, 2011
I have a gridview that includes a checkbox colum (Item Tempate).I need to be able to select row but when mouse is over checkbox column it should not be clickable. Is this possible?Think of it as an Inbox type gridview where checkbox is used for deleteing messages but when you click on subject or name it will show the message. I need the same functionality.
View 7 Replies