| | |
Format single Row in datagridview using a value in same row
Please support our C# advertiser: Intel Parallel Studio Home
![]() |
•
•
Join Date: Jun 2006
Posts: 7
Reputation:
Solved Threads: 0
I have a simple database that displays information in various datagridview controls on the same form. One thing I would like to do is change the colour of a row if the value from a cell returns "poor", or "fair"
I call a private function to go through each row in the datagrid just after it is connected to the bingingSource. I can get it to change the colour, but it formats all the rows with that colour, and I want only the row that returned the value to be changed.
Thanks.
I call a private function to go through each row in the datagrid just after it is connected to the bingingSource. I can get it to change the colour, but it formats all the rows with that colour, and I want only the row that returned the value to be changed.
c# Syntax (Toggle Plain Text)
private void checkForSurveyColour() { foreach (DataGridViewRow row in dataGridView1.Rows) { try { CNumColour = dataGridView1.CurrentRow.Cells["RepVisits"].FormattedValue.ToString(); if (CNumColour != null) { foreach(DataGridViewCell cells in row.Cells) { if (CNumColour == "Fair") { cells.Style.ForeColor = Color.Pink; } else if (CNumColour == "Poor") { cells.Style.ForeColor = Color.Red; } } } } catch(System.Exception ex) { } } }
Thanks.
•
•
Join Date: Oct 2006
Posts: 164
Reputation:
Solved Threads: 3
This might help. You shouldnt have to check if its null because if its not equal to Fair or Poor it wont matter. Also, as long as you have a column within the dataview named RepVisits and you know it will be there ever single time, you dont need the try/catch.
That is much more compact and I believe it should work the same way. The syntax might not be exactly how it should be but if you use visual studio and use the CTL + SPACE shortcuts after puting a period, it helps a lot in finding the proper method/properties you need.
Hope it helped.
C# Syntax (Toggle Plain Text)
private void checkForSurveyColour(DataGridView dv) { foreach (DataRow dr in dv.Rows) { if(dr.Cells["RepVisits "].ToString().Equals("Fair") || dr.Cells["RepVisits "].ToString().Equals("Poor") { dr.Cells["RepVisits"].Style.ForeColor = Color.Red; } }
Hope it helped.
Last edited by Barefootsanders; Sep 6th, 2007 at 5:42 pm.
![]() |
Similar Threads
- How to add rows from dataset to datagridview (C#)
- memory management in wndows 2000 (Windows NT / 2000 / XP)
- Login Security ! (PHP)
- delete a row in a sql databse (ASP.NET)
- FlexGrid issue and error "Invalid Row value".... (Visual Basic 4 / 5 / 6)
- javascript works in IE but not working in firefox (JavaScript / DHTML / AJAX)
- Newbie Question. how to put url into echo $row (PHP)
Other Threads in the C# Forum
- Previous Thread: how to call C# method in C++
- Next Thread: Help with a login program
| Thread Tools | Search this Thread |
.net access algorithm angle array asp.net barchart bitmap box broadcast c# capturing check checkbox client combobox control conversion csharp custom database datagrid datagridview dataset datetime dbconnection degrees delegate design development disappear draganddrop drawing encryption enum eventhandlers excel file firefox form format forms function gdi+ image index input install java label leak libraries list listbox loop mandelbrot math monodevelop mouseclick msword mysql operator path pause photoshop picturebox pixelinversion post programming radians regex remoting resourcefile richtextbox round server sleep socket sql statistics stream string table tcpclientchannel text textbox thread time timer update usercontrol validation virtualization visualbasic visualstudio webbrowser windows winforms wpf xml





