Forms Data Controls :: Adding A Javascript To Gridview In CodeBehind
Nov 24, 2010Is there a way to turn this
[Code]....
[Code]....
Is there a way to turn this
[Code]....
[Code]....
I have multiple questions about doing gridview in code behind.I used this code to fill my gridview at runtime.
[Code]....
My questions are:1. How to edit the column headers? When I bind the database to my gridview, obviously, the column headers of the database will be binded. For example "First_Name", I want to edit the column so I can omit the underscore.2. How to edit the column width?
First, what I am showing here works fine, and I know how to do this if the nested control comes from the same bound table. I could leave it at that, but I don't like SQL code in my aspx page, and want to move it. I'm keeping it simple here, but I can move it to a data access layer later on..... for now, I want to understand what's going on when the page loads and the nested control is rendered and populated. WHAT I LEARN FROM THIS WILL BENEFIT ME ACROSS THE BOARD - NOT just for this instance!!!
My question is, how to grab the SQL query from the aspx page for the NESTED control and move it to the codebehind. I'd LOVE to also move the Selected Value parameter if possible, but mainly want to get the SQL out of the page. I KNOW HOW TO DO THIS for a GridView or any control, but I DO NOT know how to do it for a NESTED CONTROL from a different table - i.e. WHERE it fires (on GridViewEditing or GridViewUpdating or PageLoad....) so I can put in the SQL where it belongs.... and I'm PRETTY darn SURE this can be done without a 'foreach' loop. For discussion's sake here, imagine
1. DATABASE: simple table with employee_ID, employee_name, employee_city as fields
2. DATABASE: simple table containing all cities (city, cityval)
2. simple GridView that displays these 3 fields in same order ON VIEW
3. Template field for city. On PAGE LOAD, this is a simple label bound to the 'city' field. HOWEVER - On EDIT (with edit button), the field changes to a nested DropDownList that is bound to the 'city' table, NOT to the employee table.
4. Selected value is the current city for employee The PROC you see here in the edit item SQL is actually SELECT * FROM [cities] ORDER BY [city_name]
<asp:GridView ID="grdEmployee" runat="server" AutoGenerateColumns="False"
CssClass="grdE" DataKeyNames="employee_ID"
ShowFooter="True">
<Columns>
<asp:BoundField DataField="employee_ID" HeaderText="ID" ReadOnly="True" />
<asp:TemplateField HeaderText="Employee Name">
<ItemTemplate>
<asp:Label ID="lblEmployeeName" runat="server" Text='<%#Eval("employee_name")%>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtEmployeeName" runat="server" Text='<%#Eval("employee_name")%>'></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="City">
<EditItemTemplate>
<asp:DropDownList ID="cboCity" runat="server"
DataSourceID="SqlDataSource1" DataTextField="city" DataValueField="cityval"
SelectedValue='<%# Bind("employee_city") %>'>
</asp:DropDownList>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="Data Source=XXXXXXXXXXXX;Initial Catalog=xxxxxxx;Integrated Security=True"
ProviderName="System.Data.SqlClient"
SelectCommand="QUERY_CITY" SelectCommandType="StoredProcedure"></asp:SqlDataSource>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="lblEmployeeCity" runat="server" Text='<%# Bind("employee_city") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
ALL I want to do is move the SQL Query in the EDIT template above to the code behind. I just don't know WHERE or WHEN in the code this fires and how to handle it when the table is different from the original GridView table. AND the cboCity.SelectedValue, if possible.
I've been trying to accomplish this for days without joy. I need to update a specific cell in a gridview with some static text when a button click that is outside the gridview. The cell i need to update is a template field.
View 10 RepliesI have a method I want to use on two gridviews which contain different information, ideally i want to do an if statement, something like
if (GridView.ID = "GridView_ABC") {
// do this
}
else if (GridView.ID = "GridView_2") {
// do this
}
is it possible to have a button that points to a method you have defined in codebehind, that passes in a record from the row as a parameter? for example, id.something like:
<asp:CommandField ButtonType="Image" EditImageUrl="/editbutton.jpg" ShowEditButton="True" OnClick="editRow(int id)"/>
it wouldnt necessarily 'edit' this row. i'd like it to instead load an editable grid corresponding to the id passed.
a Gridview contain itemtemplate(using code behind) and
Textbox with random id
how to access the the textbox id in code behind
[Code]....
This is my gridview with an item template, I have NO boundColumns.TO get data to codebehind I use Eval(" <Field name >"), but this returns something to a control. Not making data available for codebehind code for general use.
Question: As I have no boundcolumns I dont know how to get data to codebehind to to use as I wish??
how can i set DateFormatString inside GridView column in codebehind page?
View 6 RepliesI have a page called Page2.aspx and it is called by another page called Page1.aspx and Page1.aspx passes two parameters namely: Name and Category to Page2.aspx. Does anyone know why the following code from Page2.aspx is not working and it keeps giving an error message as follows: " You have declare the parameter @Username".
string Cat1;
string Name1;
[Code]....
I have a dropdown list where I need more than just a bound value and a display value. I am using this in the page load event to add a custom attribute:
[Code]....
I'm actually looping through a sqldatareader for a list of employees, but for simplicity just consider the single option added above. When I go to check the attribute EmpNum for the selected option, I am getting "null":
[Code]....
Now the really weird part...If I add an option in the HTML source identical to the one that gets added in the codebehind, the javascript function works for that row, but not the row added from codebehind. Here is the rendered HTML for the SELECT:
[Code]....
If I select the 1st record (added from HTML source at design time) the alert says "12345". If I select the 2nd record, the alert says "null". I CAN get the value ("999-99-9999") and the displayed text ("John Doe") for either record, just not the EmpNum attribute, even though the HTML is exactly the same. I am completely stumped on this one.
I was wondering if it is possible to add additional data to Excel document created from gridview. What I want to do is to manually add data to certain rows and columns (date, couple of titles, etc), but I'm not sure how to do it.
Currently I'm using the following code:
[Code]....
I am trying to add a new row into a gridview but for some reason i'm having a problem in the for loop.
Directly goes to dtCurrentTable.Rows.Add(drCurrentRow) and of course, have an error "'row' argument cannot be null.
Parameter name: row", because the dtcurrentTable.NewRow was not executed.
Why is this happening?
Private Sub AddNewRowToGrid()
I want to add a new row to gridview.
View 5 RepliesIn gridview when i click on the particular row, when i click on 'Insert' link button in grid view row javascript menu will come that i can do lnkbutton .attribute.add("onclick","window.openI("link") after selecting the input from the popup, row should be inserted above the current row or below the current row. depending on the selection , how i can do this with datatable
1)getting the user input
2)Adding row above or below the current grid view row depending on selection in popup
I have been tinkering with a adding row to gridview code from [URL] I have been able to adapt it to my needs but I would like to have the user edit the select statement that shows the initial gridview form.
.ASPX
[Code]....
C#
[Code]....
I can't seem to find a solid example on how to add a total row to a gridview
My gridview:
[Code]....
My Code Behind
[Code]....
Very new to C# although I have alot of older coding experience. Not much object orientated programming though. Anyways, I have a .net program I'm working on, basically to work on my skills although it will prove to be useful. I am keeping track of my work schedule. Currently, I am populating a datagridview from a sql 2008 express db. My columns are: date worked, hours, paid, and paidon. What I want to do is add an empty row whenever the date corresponds to a date that is "Monday". My goal is to line break every week. So that each work week (Mon-Sun) is seperated by a blank row. I would rather not actually have this blank row in the database. I would like the gridview to do this on the fly. Here is my gridview code in my default.aspx file:
[Code]....
are below all 3 points the same?
1)<boundfield>
<asp:button ....>
</boundfield> [code].....
i am using a gridview without any template or bound field....
<asp:GridView
ID="grvSchedule"
runat="server"
CellPadding="3"
CellSpacing="1"
SkinID="GridView_Regular" Width="732px">
<Columns>
<asp:TemplateField......
here the template field i added for hidden column... but i am not setting any values to this hidden field. i am setting the values to the grid from code behind like this....
grvSchedule.Rows[j].Cells[0].Text = Convert.ToString(dTable.Rows[i]["PatientId"]);
grvSchedule.Rows[j].Cells[2].Text = Convert.ToString(dTable.Rows[i]["Name"]);
grvSchedule.Rows[j].Cells[3].Text = Convert.ToString(dTable.Rows[i]["PatCode"]);
grvSchedule.Rows[j].Cells[4].Text = Convert.ToString(dTable.Rows[i]["Phone"]);
grvSchedule.Rows[j].Cells[5].Text = Convert.ToString(dTable.Rows[i]["Mobile"]);
grvSchedule.Rows[j].Cells[6].Text = Convert.ToString(dTable.Rows[i]["Status"]);
grvSchedule.Rows[j].Cells[7].Text = Convert.ToString(dTable.Rows[i]["Comments"]);
i need to add a new row at 0 position in gridview if a condition satisfies..... Condition is
if ((i == 0) && (Convert.ToDateTime(dTable.Rows[i]["Time"])
< Convert.ToDateTime(grvSchedule.Rows[j].Cells[1].Text)))
{
Here i need to add a new row to a 'GRIDVIEW'
}
I have this next gridview on my page : First name, Last name, ID.
It gets populated with data, and everything works great. I now wish to add a row just under the header (or above it- but I've been told it's impossible) with three checkboxes- one for each column.
Thing is- I geuss I would have to implement it programatically and I wasn't sure how could I pull this off.
I have a gridview of 5 columns and one button.when i click a button the same grid should be added to the downward, I means to say it should be attached .And in one column how much i click the button it should be shown.
View 6 Repliesam using GridView with SQLDataSourceI want to add filter DropDownList to the footer of the grid,each column of the grid will have a DropDownList in its footer that has all data in that grid (including data in other pages)how to do that?
View 2 RepliesI have a gridview that contains this info below
ID Place (button)
A Newyork
B Boston
now, when the user clicks on the button in the header, I would the gridview to contain an extrarow with blank textboxs which the user can type information in and save that information. So that when the gridview gets shows again, it contains the new information.
I have to add row in gridview dynamically when a button is clicked on my page
Each Row which have to be added contains a dropdownlist(ddlQues) in which questions are binded
On selecting question from ddlQuestion I have to bind another dropdownlist(ddlAnswers)with respective
answers in that row of gridview
So autopostback property of ddlQuestion is set to be true
Everytime when button is clicked a new row is inserted in gridview and same process repeats............
I had tried following javascript:
<script type="text/javascript">
function AddNewRecord()
{
var grd = document.getElementById('<%= gvResponse.ClientID %>');
alert(grd);
var tbod=grd.rows[0].parentNode;
var newRow=grd.rows[grd.rows.length - 1].cloneNode(true);
tbod.appendChild(newRow);
return false;
}
</script>
and calling this function on button
<asp:Button ID="btnResponse" runat="server" Text=" New Response" CssClass="button3" OnClientClick="return AddNewRecord();" />
Also I tried to solve it by C#
By both ways(either by javascript or by C#)New Row is added in gridview
But when I select question from ddlquestion then page is loaded and and the inserted row in gridview disappears
I am using asp.net 2.0 with C#