Oct 19, 2010, 9:17 AM
[CLOSED] Renderer on a TemplateColumn: not working
Hi,
i noticed that using a renderer on a TemplateColumn doesn't work. How do i solve this issue?
In the example below i would like to have the same background-color in both the Data and Number columns.
i noticed that using a renderer on a TemplateColumn doesn't work. How do i solve this issue?
In the example below i would like to have the same background-color in both the Data and Number columns.
<%@ Page Language="C#" %>
<%@ Register Assembly="Ext.Net" Namespace="Ext.Net" TagPrefix="ext" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
public class DataRecord
{
public int Id { get; set; }
public string Data { get; set; }
public float Number { get; set; }
public bool IsOk { get; set; }
}
protected void Page_Load(object sender, EventArgs e)
{
this.DataStore.DataSource = this.GetData();
this.DataStore.DataBind();
}
private List<DataRecord> GetData()
{
return new List<DataRecord>
{
new DataRecord { Id = 1, Data = "Data1", Number = 10, IsOk = true},
new DataRecord { Id = 2, Data = "Data2", Number = 11, IsOk = false },
new DataRecord { Id = 3, Data = "Data3", Number = 12, IsOk = true },
new DataRecord { Id = 4, Data = "Data4", Number = 13, IsOk = false },
};
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>Sample</title>
<script type="text/javascript">
function render(value, metadata, record, rowIndex, colIndex, store) {
if (record.get("IsOk")) {
metadata.style += "background-color: #FFFAC8;";
}
return value;
}
</script>
</head>
<body>
<ext:ResourceManager ID="ResourceManager1" runat="server" />
<ext:Store runat="server" ID="DataStore">
<Reader>
<ext:JsonReader IDProperty="Id">
<Fields>
<ext:RecordField Name="Id" Type="Int" />
<ext:RecordField Name="Data" Type="String"/>
<ext:RecordField Name="Number" Type="Float"/>
<ext:RecordField Name="IsOk" Type="Boolean"/>
</Fields>
</ext:JsonReader>
</Reader>
</ext:Store>
<ext:Viewport runat="server" ID="Viewport" Layout="Fit">
<Items>
<ext:GridPanel
runat="server"
ID="GridPanel"
StoreID="DataStore"
Title="Table"
Icon="Table"
Frame="true">
<ColumnModel ID="ColumnModel" runat="server">
<Columns>
<ext:Column Header="ID" DataIndex="Id" />
<ext:TemplateColumn Header="Data" DataIndex="Data">
<Renderer Fn="render" />
<Template ID="Template" runat="server">
<Html>
<b>{Data}</b>
</Html>
</Template>
</ext:TemplateColumn>
<ext:Column Header="Number" DataIndex="Number" >
<Renderer Fn="render"/>
</ext:Column>
</Columns>
</ColumnModel>
<SelectionModel>
<ext:RowSelectionModel ID="RowSelectionModel" runat="server" />
</SelectionModel>
<LoadMask ShowMask="true" />
</ext:GridPanel>
</Items>
</ext:Viewport>
</body>
</html>
Last edited by Daniil; Oct 19, 2010 at 1:37 PM.
Reason: [CLOSED]