Sean, you should try to use the ItemDataBound event and put your conditional code in there based on e.Item, the item currently bound. You can find samples up at www.datagridgirl.com.
Greg -----Original Message----- From: sean12302000 [mailto:[EMAIL PROTECTED] Sent: Thursday, July 01, 2004 3:22 AM To: [EMAIL PROTECTED] Subject: [AspNetAnyQuestionIsOk] condtional formattting in ado .net Hi There, I am trying to make the transition from asp .asp .net, I have been trying to format data based on different conditions without much luck. I have 3 datagrids, the first one displays an image, the second one displays columns from the database that are common (or appear everytime the stored procedure is executed. The third datagrid which I am trying to make work is based on different condtions 1. the value of (strDec) is a form name and I need to be able to format the results based on this name, there is only one row returned but there are multiple columns so are null and some are not I need to omit the null ones. 2. I tried to use if then else but this does not work, some of the forms have 3 columns next to each other and to achieve this I tried to create a table control at runtime but I could only create it in a loop I keept getting syntax errors when I tried to access each column individually. I just want to be able to have the flexability to creat something like this: Please help - thank in advance for your answer - Sean if strdec =1 AND colvalue NOT NULL then <table> <tr><td>value1</td><td>value1</td></tr> <tr><td> </td><td>value1</td></tr> <td>value1</td><td> </td></tr> Elseif strdec =2 colvalue NOT NULL then <tr><td>value1</td><td>value1</td></tr> <tr><td> </td><td>value1</td></tr> End if Public Function ShowData(ByVal strDec as string, ByVal strImageID as Integer) Dim myCommand As SqlCommand Dim colName As DataColumn Dim dRow As DataRow Dim da as New SQLDataAdapter() Dim dt As New DataTable Dim dtNew As DataTable Dim strName as string Dim myConnection As SqlConnection = New SqlConnection (ConfigurationSettings.AppSettings("ConnectionString")) myCommand = New SqlCommand ("GetListingDetail",myConnection) myCommand.CommandType = CommandType.StoredProcedure Dim pListingID As New SqlParameter("@listingID", SqlDbType.int) pListingID.Value = strImageID myCommand.Parameters.Add(pListingID) myConnection.Open da.SelectCommand=myCommand ds = New DataSet() da.Fill(ds, "tblListings") 'Dim dv as DataView = ds.Tables(0).DefaultView Dim dc As DataColumn For Each dc In ds.Tables(0).Columns If Not dc.ColumnName = "ListingID" And Not dc.ColumnName = "model" And Not dc.ColumnName = "listprice" And Not dc.ColumnName = "descri" And Not dc.ColumnName = "manufacturer" And Not dc.ColumnName = "comments" And Not dc.ColumnName = "formname" And Not dc.ColumnName = "username" And Not dc.ColumnName = "lblquantity" And Not dc.ColumnName = "lbllistprice" And Not dc.ColumnName = "lblcomments" And Not dc.ColumnName = "lbllocation" And Not dc.ColumnName = "Location" Then bindcolumn(dc.ColumnName, "") End If Next End Function Sub bindcolumn(ByVal fldname As String, ByVal formatpattern As String) Dim objbc As BoundColumn objbc = New BoundColumn() ' objbc.DataField = fldname ' objbc.HeaderText = fldname objbc.DataFormatString = formatpattern dgHyper.Columns.Add(objbc) dgHyper.DataSource = ds.Tables(0) dgHyper.DataBind() End Sub </script> </head> <table cellspacing=0 cellpadding=0 width=500 border=0> <tr> <td valign=top> <asp:DataGrid ID="dg_details" AutoGenerateColumns=False Width="250" HeaderStyle-BackColor="purple" HeaderStyle-ForeColor="White" HeaderStyle-HorizontalAlign="Center" HeaderStyle-Font-Bold="True" border=0 Runat=server> <Columns> <asp:TemplateColumn HeaderText="Image"> <ItemTemplate> <asp:Image Width="200" Height="200" alt="Listing Image" ImageUrl='<%# FormatURL(DataBinder.Eval (Container.DataItem, "ListingID")) %>' Runat=server /> </ItemTemplate> </asp:TemplateColumn> </Columns> </asp:DataGrid> </td> <td> <table cellspacing=0 cellpadding=0 width=250 border=0> <tr><td valign=top> <asp:datagrid id="dgHyper" runat="server" HeaderStyle-BackColor="purple" HeaderStyle-ForeColor="White" HeaderStyle-HorizontalAlign="Center" HeaderStyle-Font-Bold="True" border="0" AutoGenerateColumns="False"> <COLUMNS> <asp:TemplateColumn HeaderText="Listing Info"> <ItemTemplate> <table border="0" cellpadding=0 cellspacing=0 width=250 height=200> <tr> <td align="left"><b>Equipment Type:</b></td> <td><%# DataBinder.Eval(Container.DataItem, "formname") % ></td> </tr> <tr> <td align="left"><b>Manufacturer:</b></td> <td><%# DataBinder.Eval (Container.DataItem, "manufacturer") %></td> </tr> <tr> <td align="left"><b>Model:</b></td> <td><%# DataBinder.Eval(Container.DataItem, "model") % ></td> </tr> <tr> <td align="left"><b>Description:</b></td> <td><%# DataBinder.Eval(Container.DataItem, "descri") % ></td> </tr> </ItemTemplate> </asp:TemplateColumn> <asp:TemplateColumn> <ItemTemplate> <tr> <td align="left"><b>Quantity:</b></td> <td><%# DataBinder.Eval(Container.DataItem, "quantity") % ></td> </tr> <tr> <td align="left"><b>Price:</b></td> <td><%# DataBinder.Eval(Container.DataItem, "listprice") % ></td> </tr> <tr> <td align="left"><b>Comments:</b></td> <td><%# DataBinder.Eval(Container.DataItem, "comments") % ></td> </tr> <tr> <td align="left"><b>Location:</b></td> <td><%# DataBinder.Eval(Container.DataItem, "Location") % ></td> </tr> <tr> <td align="left"><b>Listed By:</b></td> <td><%# DataBinder.Eval(Container.DataItem, "username") % ></td> </tr> </table> </ItemTemplate> </asp:TemplateColumn> </Columns> </asp:datagrid> <asp:datagrid id="dgdetails" runat="server" HeaderStyle-BackColor="purple" HeaderStyle-ForeColor="White" HeaderStyle-HorizontalAlign="Center" HeaderStyle-Font-Bold="True" border="0" AutoGenerateColumns="False"> </asp:datagrid> </td></tr> </table> </td></tr> </table> Yahoo! Groups Links ------------------------ Yahoo! Groups Sponsor --------------------~--> Yahoo! Domains - Claim yours for only $14.70 http://us.click.yahoo.com/Z1wmxD/DREIAA/yQLSAA/saFolB/TM --------------------------------------------------------------------~-> Yahoo! Groups Links <*> To visit your group on the web, go to: http://groups.yahoo.com/group/AspNetAnyQuestionIsOk/ <*> To unsubscribe from this group, send an email to: [EMAIL PROTECTED] <*> Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/