Showing posts with label repeater. Show all posts
Showing posts with label repeater. Show all posts

Saturday, March 31, 2012

Set a bgcolor in a repeater based on databse value asp newbie

Hi,

I'm just starting to write in asp and have been trying to create a repeater
to display some data in a simple form.

The basics worked ok and then I tried to set a bgcolor on a cell based on
it's value, I have read and re-read a good few things but nothing seems to
point to this scenario directly. I know the following code doesn't actually
work but this is roughly what I'm trying to do. eventually I want to do the
same thing with dates but baby steps first :)

<ItemTemplate>
<%If #(DataBinder.Eval(Container.DataItem, "CategoryName") =
"something") Then%>'
<tr>
<td bgcolor="#ff0000">
<%Else%>
<tr>
<td bgcolor="#CCFFCC">
<% End If%>
<asp:Label runat="server" ID="Labell" Text='<%#
Eval("CategoryName") %>' />
</td>
<td bgcolor="#CCFFCC">
<asp:Label runat="server" ID="Label2" Text='<%#
Eval("Description") %>' />
</td>
</tr>
</ItemTemplate
Thanks in advance for any help

Jim FlorenceInstead of attempting to change the colour of the <ItemTemplate>, add an
<AlternatingItemTemplate> section and type the colour in there. dotNet will
then take care of the rest for you.

"Jim Florence" wrote:

> Hi,
> I'm just starting to write in asp and have been trying to create a repeater
> to display some data in a simple form.
> The basics worked ok and then I tried to set a bgcolor on a cell based on
> it's value, I have read and re-read a good few things but nothing seems to
> point to this scenario directly. I know the following code doesn't actually
> work but this is roughly what I'm trying to do. eventually I want to do the
> same thing with dates but baby steps first :)
> <ItemTemplate>
> <%If #(DataBinder.Eval(Container.DataItem, "CategoryName") =
> "something") Then%>'
> <tr>
> <td bgcolor="#ff0000">
> <%Else%>
> <tr>
> <td bgcolor="#CCFFCC">
> <% End If%>
> <asp:Label runat="server" ID="Labell" Text='<%#
> Eval("CategoryName") %>' />
> </td>
> <td bgcolor="#CCFFCC">
> <asp:Label runat="server" ID="Label2" Text='<%#
> Eval("Description") %>' />
> </td>
> </tr>
> </ItemTemplate>
> Thanks in advance for any help
> Jim Florence
"Dean" <Dean@.discussions.microsoft.com> wrote in message
news:79F7A0BD-A3ED-4605-8CE4-89DACF298D04@.microsoft.com...
Dean,

Thanks for the reply, that works great for the entire row but not for
individual cells within the row based on the cell's value or name.

What I'm eventually trying to do is set an individual date cell to be either
red, amber or green depending on how many days overdue an item is

Many thanks again

Jim

>Instead of attempting to change the colour of the <ItemTemplate>, add an
> <AlternatingItemTemplate> section and type the colour in there. dotNet
> will
> then take care of the rest for you.
>
> "Jim Florence" wrote:
>>
>> Hi,
>>
>> I'm just starting to write in asp and have been trying to create a
>> repeater
>> to display some data in a simple form.
>>
>> The basics worked ok and then I tried to set a bgcolor on a cell based on
>> it's value, I have read and re-read a good few things but nothing seems
>> to
>> point to this scenario directly. I know the following code doesn't
>> actually
>> work but this is roughly what I'm trying to do. eventually I want to do
>> the
>> same thing with dates but baby steps first :)
>>
>> <ItemTemplate>
>> <%If #(DataBinder.Eval(Container.DataItem, "CategoryName") =
>> "something") Then%>'
>> <tr>
>> <td bgcolor="#ff0000">
>> <%Else%>
>> <tr>
>> <td bgcolor="#CCFFCC">
>> <% End If%>
>> <asp:Label runat="server" ID="Labell" Text='<%#
>> Eval("CategoryName") %>' />
>> </td>
>> <td bgcolor="#CCFFCC">
>> <asp:Label runat="server" ID="Label2" Text='<%#
>> Eval("Description") %>' />
>> </td>
>> </tr>
>> </ItemTemplate>
>>
>> Thanks in advance for any help
>>
>> Jim Florence
>>
Jim,

Try this instead:
<td bgcolor='<%#(DataBinder.Eval(Container.DataItem, "CategoryName") ==
"something"?"#ff0000":"#ffffff"%>'
This assumes that you are in C#, in VB i think there is a immediate if
of IIf();

HTH,
Chris
"chris" <chris@.cubed-c.com> wrote in message
news:1151142480.516385.115290@.m73g2000cwd.googlegr oups.com...
Chris your a star,

After very minor fiddling the code is

<td bgcolor='<%# IIF (DataBinder.Eval(Container.DataItem, "CategoryName") =
"Confections","#ff0000","#ccffcc")%>'
Thanks very much for your help I tearing my hair out trying to make this
work

Regards

Jim

> Jim,
> Try this instead:
> <td bgcolor='<%#(DataBinder.Eval(Container.DataItem, "CategoryName") ==
> "something"?"#ff0000":"#ffffff"%>'>
> This assumes that you are in C#, in VB i think there is a immediate if
> of IIf();
> HTH,
> Chris

Thursday, March 29, 2012

Set CheckBox or Radio in repeater with if statement

Hi,
Attempting to display a questions list in my aspx page with the help of a
repeater.
This repeater displays each question (Label and picture) and each answer in
a nested repeater.
My problem is that each question can have ONE good answer or SEVERAL.
If the question has just one good answer, I want my answers displayed with
radio buttons.
In the other case, with checkbox.
is It Possible ?
Thks for help.Yes, but you'll most likely need to implement the logic in the ItemDataBound
event. This will let you define a placeholder in the itemTemplate which you
can then fill and dynamically create the checkbox/radiolist. You can find
out more at: http://www.openmymind.net/databinding/index.html
karl
MY ASP.Net tutorials
http://www.openmymind.net/
"Mick" <saulot@.libertysurf.fr> wrote in message
news:41da537a$0$21436$636a15ce@.news.free.fr...
> Hi,
> Attempting to display a questions list in my aspx page with the help of a
> repeater.
> This repeater displays each question (Label and picture) and each answer
in
> a nested repeater.
> My problem is that each question can have ONE good answer or SEVERAL.
> If the question has just one good answer, I want my answers displayed with
> radio buttons.
> In the other case, with checkbox.
> is It Possible ?
> Thks for help.
>
>

Set CheckBox or Radio in repeater with if statement

Hi,
Attempting to display a questions list in my aspx page with the help of a
repeater.
This repeater displays each question (Label and picture) and each answer in
a nested repeater.

My problem is that each question can have ONE good answer or SEVERAL.
If the question has just one good answer, I want my answers displayed with
radio buttons.
In the other case, with checkbox.

is It Possible ?

Thks for help.Yes, but you'll most likely need to implement the logic in the ItemDataBound
event. This will let you define a placeholder in the itemTemplate which you
can then fill and dynamically create the checkbox/radiolist. You can find
out more at: http://www.openmymind.net/databinding/index.html

karl

--
MY ASP.Net tutorials
http://www.openmymind.net/

"Mick" <saulot@.libertysurf.fr> wrote in message
news:41da537a$0$21436$636a15ce@.news.free.fr...
> Hi,
> Attempting to display a questions list in my aspx page with the help of a
> repeater.
> This repeater displays each question (Label and picture) and each answer
in
> a nested repeater.
> My problem is that each question can have ONE good answer or SEVERAL.
> If the question has just one good answer, I want my answers displayed with
> radio buttons.
> In the other case, with checkbox.
> is It Possible ?
> Thks for help.