Forms Data Controls :: GridView Conditional Formatting Based On Duplicate Values?
Jun 2, 2010
I have a gridview containing serial-numbers.
I would like to format the background each data-row that contains a duplicate serial-number value.
I'm planning to do this using a DataBound event handler.
So, in English:
Set background colour of THIS_ROW to red where the Serial_Number of THIS_ROW is the same as the Serial_Number of ANY_OTHER_ROW.
All rows with duplicate serial-numbers would be red.
I'm not sure how to write the code for this event.
The gridview is bound to a SQL datasource. Getting the dupes in SQL is easy:
SELECT Serial
FROM Table
GROUP BY Serial
HAVING (COUNT(Serial) > 1)
View 8 Replies
Similar Messages:
Jun 3, 2010
I have the following VB code that is trying to change colors based on the values. The first condition works but the second does not.
[Code]....
View 3 Replies
Jun 14, 2010
I have the following code:
[Code]....
I need to add a check for a checkbox column in the grid. Something like:If CDate(e.Row.Cells(6).Text) < Date.Now and 'checkbox is checked' Then make another colorHow do I check for the value of the checkbox?
View 5 Replies
Feb 2, 2011
I have a gridview on my aspx page. I know we can format gridview row in rowdatabound() of gridview. But my problem is bit different.
In my gridview, i have a column customer code, a single code can repeat more than once successively. I want for one customer code, row color should be blue and as soon as code changes colour should be yellow for that code. Similarly when code changes again color should be blue again.
In this way color of my gridview rows should be blue and yellow alternately based on my customer code.I have arranged customer code in order by using sql order by clause.
View 2 Replies
Feb 5, 2010
I am using a column named "bk_End_Date" in my gridview.I want to change the row color based on a condition.i.e. if the date value is within one week of today's date (upcomming days only), it's color should be red.I tried following method in RowDataBound Event of C#
//if (DateTime.Parse(e.Row.Cells[5].Text) <= DateTime.Today.AddDays(7))
//{
// e.Row.BackColor.Equals(Color.FromName("Red"));
[code]...
View 3 Replies
Mar 29, 2011
In my repeater I am attempting to set the label format based on a value from my datasource. The following line from my repeater is straightforward enough but now how would I modify it if I wanted the "C2" statement in the ToString to pull from a field in my datasource named "MyFormat" which would contain either the C2 or N0 value? Basically switching the formatting for that label between currency and a double?
<asp:Label runat="server" ID="lblValue1" Text='<%# Convert.ToDouble(Eval("MyValue")).ToString("C2") %>'></asp:Label>
I've attempted to simply insert a statement such as Eval("MyFormat") in place of the "C2" statement but to no avail.
View 2 Replies
Mar 1, 2011
I am trying to change GridView Row formatting based on cell value. I am using GridView's Rowbound event. It works when Caching on SQL datasourceis disabled but when caching is enabled it doesn't seem to work.
View 1 Replies
Mar 13, 2011
I want to have a listview with conditional formatting on its edit and delete button.So, in nutshell, I want to check if the writer of post is equal to session("memberid"), then the edit and delete button will be appeared, else, it will show hidden.
[Code]....
roughly, i want and plan it to be sort of like that (as i found it at [URL]But I do not have any idea on how to make it whatsoever.So, if you guys have any idea (same as method above or different method), please show me the way.I have seen another forum, but I don't get it.
View 6 Replies
Feb 15, 2010
I am trying to format currency in a GridView cell so that a zero value displays blank, but otherwise the amount in currency is shown.
Is there a more simple way than this?
[Code]....
View 3 Replies
Feb 18, 2011
The user will enter values in the textbox of the gridview in item template. A button outside the grid, when it is pressed we have to highlight the duplicate values.
Is there is any way to use validation control.
View 2 Replies
Jan 24, 2016
I have 3 textboxes and one submit button outside gridview. This textboxes submit value to gridview.
I want to be able to check and stop duplicate value in gridview.
View 1 Replies
Feb 25, 2010
This might be confusing but ill try to explain the best as i can. I have a gridview that get the data from datatable. This is simulation my grid view.
key data
1 data1
2 data2
2. data2
2. data2
3. data3
3. data3
what i want is make some conditional statement, when value "key" is changed i want to add empty row. so its suppose to be looks like this as result.
key data
1 data1
EMPTY ROW
2 data2
2. data2
2. data2
EMPTY ROW
3. data3
3. data3
View 2 Replies
Oct 8, 2010
I have a repeater control with a delete button on each row. I also have a link on the same page (not within the repeater) that I only want to be visible when the repeater contains at least one row.
My problem is that, when the delete button on the final row is clicked, this triggers a postback during which the ItemCommand event is called to process the delete click. However this event is processedafter the Page Load event in which I would normally render or not render the conditional link. So I don't know at the time I'm rendering the link whether the user has just deleted the last row.
Am I misunderstanding the chain of events or is there a better way of handling this? Could I, for example, determine from the Sender & e arguments available within the Page_Load event, that the postback has been triggered by clicking the delete button in the repeater? The only other way I can see of dealing with this is to force a second postback once the final row of the repeater has been deleted which seems like overkill.
View 3 Replies
Jul 28, 2010
I have to select checkboxes besed on group column values. If you see below gridview, column 3 (GroupN) has 1,1,1,1,2,2,2,2....etc (this column data is not static, will change based on page index. i.e PageIndex =2 may starts with 7,7,7,8,8,8,8,8,9,9,9 etc).
Now My question is.
1). If user selected '1', we have to store value and user must and should select another '1' (atleast two times).
2) If user selected '1', and user trying select '2'. Giving error says "Must have select one then one record in group to combine' (will not allow) and unselect '2'.
3) If user selected '1' atleast two times, and user trying select '2'. Will allow.
4) If user selected '1' atleast two times and selected '2' one time, trying to select '3'. will not allow user to select '3'.
View 3 Replies
May 28, 2010
I'm new to web dev and c# so please bare with me. I am trying to create a dynamic gridview in a web form for users to to answer questions with (code below).
The dificulty im having is that i am nesting a dropdwonlist in the gridview and want to be able to dynamically set the list values based on parameters (of the row they are on). These values are in the main dataset for the gridview as each row represents a questionid and question text and then a ddl for the criteria...
I just don't know how to set the values for the dropdown all the code so far is below... just need to be able to populate the dropdowns with the relevant values.
I have created a stored proc to return the different criteria based on the questionid and questionGroupid which is the dataset that populates the other fields in the gridview: dbo.usp_QuestionCriteria @QuestionGroupId, @QuestionId
I have added this as a tableadapter called criteriaTableAdapter in a xsd file as well using the wizard... not sure if this is the right option though or just use the same method as i have for the other stored procedure as in the code below:
[CODE
]using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["Sql"].ConnectionString);
con.Open();
SqlCommand com = new SqlCommand("usp_QuestionGroupDS", con);
com.CommandType = CommandType.StoredProcedure;
SqlDataAdapter ada = new SqlDataAdapter(com);
DataSet ds = new DataSet();
ada.Fill(ds);
for (int i = 0; i < ds.Tables.Count; i++)
{
if (ds.Tables[i].Rows.Count > 0)
{
GridView gvDynamicQuestion = new GridView();
gvDynamicQuestion.Width = Unit.Pixel(700);
gvDynamicQuestion.BorderWidth = Unit.Pixel(0);
gvDynamicQuestion.Caption = "<div id="nifty" class="QuestionGroup"> <b class="rtop"><b class="r1"></b><b class="r2"></b><b class="r3"></b><b class="r4"></b></b>" + ds.Tables[i].Rows[0]["Category"].ToString() + " Questions<b class="rbottom"><b
class="r4"></b><b class="r3"></b><b class="r2"></b><b class="r1"></b></b></div>";
gvDynamicQuestion.AutoGenerateColumns = false;
gvDynamicQuestion.ShowFooter = true;
TemplateField tf = null;
tf = new TemplateField();
tf.HeaderTemplate = new DynamicGridViewTextTemplate("QuestionId", DataControlRowType.Header);
tf.ItemTemplate = new DynamicGridViewTextTemplate("QuestionId", DataControlRowType.DataRow);
tf.FooterTemplate = new DynamicGridViewTextTemplate(DataControlRowType.Footer, ds.Tables[i].Rows.Count);
gvDynamicQuestion.Columns.Add(tf);
tf = new TemplateField();
tf.HeaderTemplate = new DynamicGridViewTextTemplate("Question", DataControlRowType.Header);
tf.ItemTemplate = new DynamicGridViewTextTemplate("Question", DataControlRowType.DataRow);
gvDynamicQuestion.Columns.Add(tf);
tf = new TemplateField();
tf.HeaderText = "Criteria";
tf.HeaderTemplate = new DynamicGridViewTextTemplate("Criteria", DataControlRowType.Header);
tf.ItemTemplate = new DynamicGridViewDDLTemplate();
gvDynamicQuestion.Columns.Add(tf);
////tf = new TemplateField();
////tf.HeaderText = "Criteria";
////tf.ItemTemplate = new DynamicGridViewDDLTemplate();
////gvDynamicQuestion.Columns.Add(tf);
gvDynamicQuestion.DataSource = ds.Tables[i];
gvDynamicQuestion.DataBind();
phDynamicGridHolder.Controls.Add(gvDynamicQuestion);
}
}
}
protected void DynamicGrid_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.Footer)
{
//
}
}
}
public class DynamicGridViewTextTemplate : ITemplate
{
string _ColName;
DataControlRowType _rowType;
int _Count;
public DynamicGridViewTextTemplate(string ColName, DataControlRowType RowType)
{
_ColName = ColName;
_rowType = RowType;
}
public DynamicGridViewTextTemplate(DataControlRowType RowType, int QuestionCount)
{
_rowType = RowType;
_Count = QuestionCount;
}
public void InstantiateIn(System.Web.UI.Control container)
{
switch (_rowType)
{
case DataControlRowType.Header:
Literal lc = new Literal();
lc.Text = "<b>" + _ColName + "</b>";
container.Controls.Add(lc);
break;
case DataControlRowType.DataRow:
Label lbl = new Label();
lbl.DataBinding += new EventHandler(this.lbl_DataBind);
container.Controls.Add(lbl);
break;
case DataControlRowType.Footer:
Literal flc = new Literal();
flc.Text = "<b>Total No of Questions:" + _Count + "</b>";
container.Controls.Add(flc);
break;
default:
break;
}
}
private void lbl_DataBind(Object sender, EventArgs e)
{
Label lbl = (Label)sender;
GridViewRow row = (GridViewRow)lbl.NamingContainer;
lbl.Text =DataBinder.Eval(row.DataItem, _ColName).ToString();
}
}
public class DynamicGridViewDDLTemplate : ITemplate
{
// Implementation of ITemplate
public void InstantiateIn(System.Web.UI.Control container)
{
// Create a DDL
DropDownList ddl = new DropDownList();
//Attach method to delegate
ddl.DataBinding += new System.EventHandler(this.ddl_DataBind);
container.Controls.Add(ddl);
}
//Method that responds to the DataBinding event
private void ddl_DataBind(object sender, System.EventArgs e)
{
//DropDownList ddl = (DropDownList)sender;
//DataGridItem container = (DataGridItem)ddl.NamingContainer;
//ddl.Data.Checked = [Data binding expression];
}
}
[/CODE]
View 7 Replies
Dec 30, 2010
I need to call two dofferent javascript functions accroding to the value of a Databinder item.
<%
if
((DataBinder.Eval(Container.DataItem,
"account_type"))
== "Investor")
{
%>
<a
href="javascript:void(0)"
onclick="ViewInvestorDetail('<%#
DataBinder.Eval(Container.DataItem, "row_id")%>','<%=
BasePage.ServerPath %>')"
><h3><%#
DataBinder.Eval(Container.DataItem,
"account_username")%></h3></a>
<%....................................
View 6 Replies
Feb 7, 2011
sample SQL data:
table1:
eid ename
1 vijay
2 shankar
table 2:
id eid sal
1 1 4000
2 1 3000
3 2 2000
i want to bind the below data format in repeater.
vijay
4000
3000
shankar
2000
View 2 Replies
Mar 29, 2010
complete error msg[rsCompilerErrorInExpression] The Value expression for the textbox 'COUNT' contains an error: [BC30455] Argument not specified for parameter 'TruePart' of 'Public Function IIf(Expression As Boolean, TruePart As Object, FalsePart As Object) As Object'.
View 1 Replies
Nov 18, 2010
I have a conditional Eval statement in a Gridview that returns a boolean result to display an image if two datafields(strings) are identical:
Visible='<%# Eval("customerA").Equals(Eval("customerB")) %>'
Works great except I don't want the image to display if both datafields are empty. How can I add that logic into this Eval stmt?
View 3 Replies
Aug 12, 2010
Conditional GridView Rowstyle with CssClass Asp.net forum,
View 7 Replies
Apr 6, 2010
I have a gridview with a select link (Not auto created) One of my columns is a date column Another column is essentially a 'group code' For rows that have the same group code I want to disable or make the link button not visible for all but the most recent row. I wasn't sure how to go about doing this.
[Code]....
View 7 Replies
Mar 15, 2010
I have a gridview with delete buttons for each record (I've used AccessDataSource). I have loaded the data in and have many duplicate records.
I just want to use the delete button delete each duplicate record while remains many duplicate records. For example:
I used the following query to load in duplicate records:
SELECT * FROM TableA WHERE ([ControlA] IN (SELECT [ControlA] FROM TableA GROUP BY [ControlA] HAVING (COUNT [ControlA]) > 1)))
ID ControlA PIN# FaceValue Date
delete 76637 128232 1234 5 6/4/2006
delete 72722 128232 1234 5 6/4/2006
delete 76638 234567 2345 10 7/3/2006
delete 72723 234567 2345 10 7/3/2006
What is the query to delete single duplicate record instead of deleting all duplicate records?
View 25 Replies
Dec 9, 2010
I did some search but nothing is really useful in my case.
I want to inherit the DataControlField (System.Web.UI.WebControls) to be able to carry two label controls and then I want to color the two labels to get some sort of conditional formatting, I've got the conditional formatting part but how can I customize this class?
Where in my class should I define the two label controls?
How would I override the CreateField method?
P.S: I know I can accomplish this, in XHTML Markup, but I have so many columns that it would not be appropriate to include those markups in the page markup. Therefore I'm doing that in the CodeBehind page.
EDIT:
public class MyField : DataControlField
{
public MyField()
{
}
protected override DataControlField CreateField()
{
// What to put here?
}
protected override void CopyProperties(DataControlField newField)
{
((CalendarField)newField).DataField = this.DataField;
((CalendarField)newField).DataFormatString = this.DataFormatString;
((CalendarField)newField).ReadOnly = this.ReadOnly;
base.CopyProperties(newField);
}
public override void InitializeCell(DataControlFieldCell cell, DataControlCellType cellType, DataControlRowState rowState, int rowIndex)
{
// Call the base method
base.InitializeCell(cell, cellType, rowState, rowIndex);
// Initialize the contents of the cell quitting if it is a header/footer
if (cellType == DataControlCellType.DataCell)
InitializeDataCell(cell, rowState);
}
protected virtual void InitializeDataCell(DataControlFieldCell cell, DataControlRowState rowState)
{
}
}
View 1 Replies
Mar 9, 2011
This is what I have - it works:
<asp:GridView ID="GridView10" runat="server" AutoGenerateColumns="False" DataSourceID="SqlDataSource10"
<asp:TemplateField HeaderText="File Photo" SortExpression="Pic_Number">
<ItemTemplate>
<asp:Image ID="Image1" runat="server" ImageUrl='<%# (Eval("Pic_Number", "http://.../images/{0}.jpg")) %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="Item_Count" HeaderText="Stock" SortExpression="Item_Count" InsertVisible="False" ReadOnly="True" >
Conceptually what I want: (item count is a BoundField called in the GridView )
<asp:GridView ID="GridView10" runat="server" AutoGenerateColumns="False" DataSourceID="SqlDataSource10"
<asp:TemplateField HeaderText="File Photo" SortExpression="Pic_Number">
<ItemTemplate>
( IF "Item_Count" > 50 )
<asp:Image ID="Image1" runat="server" ImageUrl='<%# (Eval("Pic_Number", "http://.../images/{0}.jpg")) %>' />
( IF "Item_Count" < 50 )
onmouseout : <asp:Image ID="Image1" runat="server" ImageUrl='<%# (Eval("Pic_Number", "http://.../images/StockLow.jpg")) %>' />
onmouseover: <asp:Image ID="Image1" runat="server" ImageUrl='<%# (Eval("Pic_Number", "http://.../images/{0}.jpg")) %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="Item_Count" HeaderText="Stock" SortExpression="Item_Count" InsertVisible="False" ReadOnly="True" >
View 2 Replies
Feb 2, 2011
formatting a gridview where I have some numbers that show up with the minus sign on top of the number.Ideally I'd like to set the negative numbers to be red if you know how to do that.I'd also just like more control over the width of the columns.some of my formatting code is below. The If - Endif stuff fails with a null reference exception, but the forecolor and backcolor and align code works
[Code]....
View 4 Replies