<
telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" runat="server"
Skin="Vista" IsSticky="true" BackgroundPosition="Center" Height="60px"
Width="70px" HorizontalAlign="Center">
</telerik:RadAjaxLoadingPanel>
<asp:ContentPlaceHolder ID="contentBody" runat="server">
--------------Here comes the pages---------------
</asp:ContentPlaceHolder>
Actually , when ajax workes, i see the image loading but it is positioned in top of the page, and also take place. I want it to be in the center of the ajaxed place, and to above the content, not instead place in the content.
Is it possible?
I have attached a picture of how my loadingPanel is seen when ajaxed.
Thanks,
gila
Hi
I’m trying to setup a terms & conditions box.
What mechanism/control can I use to display html T & C text (coming from a data field) on a web form such that when user scrolls to the bottom of the text using scroll bar then an event is fired to designate that user has read all the text?
Many Thanks
Regards
<
telerik:AjaxSetting
AjaxControlID
=
"RadGrid"
>
<
UpdatedControls
>
<
telerik:AjaxUpdatedControl
ControlID
=
"RadGrid"
LoadingPanelID
=
"RadAjaxLoadingPanel1"
/>
</
UpdatedControls
>
</
telerik:AjaxSetting
>
<
telerik:RadGrid
ID
=
"RadGrid1"
runat
=
"server"
GridLines
=
"None"
Width
=
"900px"
OnNeedDataSource
=
"RadGrid1_NeedDataSource"
oncolumncreated
=
"RadGrid1_ColumnCreated"
AutoGenerateHierarchy
=
"true"
AutoGenerateColumns
=
"true"
>
</
telerik:RadGrid
>
protected
void
RadGrid1_NeedDataSource(
object
source, Telerik.Web.UI.GridNeedDataSourceEventArgs e)
{
this
.RadGrid1.DataSource = CreateDataSet();
}
private
DataSet CreateDataSet()
{
DataSet dataset =
new
DataSet();
string
previousFY =
string
.Empty;
string
currentFY =
string
.Empty;
if
(DateTime.Now.Month >= 7)
{
previousFY = DateTime.Now.Year.ToString();
currentFY = (DateTime.Now.Year + 1).ToString();
}
else
{
previousFY = (DateTime.Now.Year - 1).ToString();
currentFY = DateTime.Now.Year.ToString();
}
OpenDataDataContext db =
new
OpenDataDataContext();
// FUND
var prevFYFundTotals = from t
in
db.open_FY_Totals
join f
in
db.Funds on
new
{ Fund = t.Fund } equals
new
{ Fund = f.fieldcode }
where
t.FY == currentFY
group
new
{ t, f } by
new
{
t.FY,
Fund = t.Fund.Substring(0, 2)
} into g
orderby
g.Key.FY,
g.Key.Fund
select
new
{
g.Key.FY,
g.Key.Fund,
Fund_Desc = g.Max(p => p.f.desc30),
Budget = String.Format(
"{0:$#,0.00}"
, (System.Decimal?)g.Sum(p => p.t.BudgetAmt)),
Actual = String.Format(
"{0:$#,0.00}"
, (System.Decimal?)g.Sum(p => p.t.ActualAmt)),
Encumbered = String.Format(
"{0:$#,0.00}"
, (System.Decimal?)g.Sum(p => p.t.EncAmt)),
Committed = String.Format(
"{0:$#,0.00}"
, (System.Decimal?)(g.Sum(p => p.t.ActualAmt) + g.Sum(p => p.t.EncAmt))),
PercentCommitted = String.Format(
"{0:0.00}%"
, (Decimal?)Convert.ToDecimal((g.Sum(p => p.t.ActualAmt) + g.Sum(p => p.t.EncAmt)) / g.Sum(p => p.t.BudgetAmt) * 100)),
Remaining = String.Format(
"{0:$#,0.00}"
, (System.Decimal?)(g.Sum(p => p.t.BudgetAmt) - (g.Sum(p => p.t.ActualAmt) + g.Sum(p => p.t.EncAmt))))
};
DataTable dtPrevFYFundTotals =
new
DataTable();
dtPrevFYFundTotals.TableName =
"PrevFYFundTotals"
;
dtPrevFYFundTotals.Columns.Add(
"Fund"
,
typeof
(
string
));
dtPrevFYFundTotals.Columns.Add(
"Fund_Desc"
,
typeof
(
string
));
dtPrevFYFundTotals.Columns.Add(
"Budget"
,
typeof
(
string
));
dtPrevFYFundTotals.Columns.Add(
"Actual"
,
typeof
(
string
));
dtPrevFYFundTotals.Columns.Add(
"Encumbered"
,
typeof
(
string
));
dtPrevFYFundTotals.Columns.Add(
"Committed"
,
typeof
(
string
));
dtPrevFYFundTotals.Columns.Add(
"PercentCommitted"
,
typeof
(
string
));
dtPrevFYFundTotals.Columns.Add(
"Remaining"
,
typeof
(
string
));
DataColumn[] keys =
new
DataColumn[1];
keys[0] = dtPrevFYFundTotals.Columns[
"Fund"
];
dtPrevFYFundTotals.PrimaryKey = keys;
dataset.Tables.Add(dtPrevFYFundTotals);
foreach
(var item
in
prevFYFundTotals)
{
dtPrevFYFundTotals.Rows.Add(
new
object
[] { item.Fund, item.Fund_Desc, item.Budget, item.Actual, item.Encumbered, item.Committed, item.PercentCommitted, item.Remaining });
}
// RESP
var prevFYRespTotals = from t
in
db.open_FY_Totals
join r
in
db.Resps on
new
{ Resp = t.Resp } equals
new
{ Resp = r.fieldcode }
where
t.FY == currentFY
group
new
{ t, r } by
new
{
t.FY,
Fund = t.Fund.Substring(0, 2),
t.Resp
} into g
orderby
g.Key.Fund,
g.Key.Resp
select
new
{
Fund = g.Key.Fund.Substring(0, 2),
Resp = g.Key.Resp.Replace(
"."
,
""
),
Resp_Desc = g.Max(p => p.r.desc30),
Budget = String.Format(
"{0:$#,0.00}"
, (System.Decimal?)g.Sum(p => p.t.BudgetAmt)),
Actual = String.Format(
"{0:$#,0.00}"
, (System.Decimal?)g.Sum(p => p.t.ActualAmt)),
Encumbered = String.Format(
"{0:$#,0.00}"
, (System.Decimal?)g.Sum(p => p.t.EncAmt)),
Committed = String.Format(
"{0:$#,0.00}"
, (System.Decimal?)(g.Sum(p => p.t.ActualAmt) + g.Sum(p => p.t.EncAmt))),
PercentCommitted = String.Format(
"{0:0.00}%"
, g.Sum(p => p.t.BudgetAmt) > 0 ? ((g.Sum(p => p.t.ActualAmt) + g.Sum(p => p.t.EncAmt)) / g.Sum(p => p.t.BudgetAmt)) * 100 : 0),
Remaining = String.Format(
"{0:$#,0.00}"
, (System.Decimal?)(g.Sum(p => p.t.BudgetAmt) - (g.Sum(p => p.t.ActualAmt) + g.Sum(p => p.t.EncAmt))))
};
DataTable dtPrevFYRespTotals =
new
DataTable();
dtPrevFYRespTotals.TableName =
"PrevFYRespTotals"
;
dtPrevFYRespTotals.Columns.Add(
"Fund"
,
typeof
(
string
));
dtPrevFYRespTotals.Columns.Add(
"Resp"
,
typeof
(
string
));
dtPrevFYRespTotals.Columns.Add(
"Resp_Desc"
,
typeof
(
string
));
dtPrevFYRespTotals.Columns.Add(
"Budget"
,
typeof
(
string
));
dtPrevFYRespTotals.Columns.Add(
"Actual"
,
typeof
(
string
));
dtPrevFYRespTotals.Columns.Add(
"Encumbered"
,
typeof
(
string
));
dtPrevFYRespTotals.Columns.Add(
"Committed"
,
typeof
(
string
));
dtPrevFYRespTotals.Columns.Add(
"PercentCommitted"
,
typeof
(
string
));
dtPrevFYRespTotals.Columns.Add(
"Remaining"
,
typeof
(
string
));
keys =
new
DataColumn[2];
keys[0] = dtPrevFYRespTotals.Columns[
"Fund"
];
keys[1] = dtPrevFYRespTotals.Columns[
"Resp"
];
dtPrevFYRespTotals.PrimaryKey = keys;
dataset.Tables.Add(dtPrevFYRespTotals);
foreach
(var item
in
prevFYRespTotals)
{
dtPrevFYRespTotals.Rows.Add(
new
object
[] { item.Fund, item.Resp, item.Resp_Desc, item.Budget, item.Actual, item.Encumbered, item.Committed, item.PercentCommitted, item.Remaining });
}
//OBJECT
var prevFYObjTotals = from t
in
db.open_FY_Totals
join o
in
db.Object_Mgts on
new
{ Obj = t.Obj } equals
new
{ Obj = o.fieldcode }
where
t.FY == currentFY
group
new
{ t, o } by
new
{
t.FY,
Fund = t.Fund.Substring(0, 2),
t.Resp,
t.Obj
} into g
orderby
g.Key.Fund,
g.Key.Resp,
g.Key.Obj
select
new
{
Fund = g.Key.Fund.Substring(0, 2),
Resp = g.Key.Resp.Replace(
"."
,
""
),
Obj = g.Key.Obj.Replace(
"."
,
""
),
Obj_Desc = g.Max(p => p.o.desc30),
Budget = String.Format(
"{0:$#,0.00}"
, (System.Decimal?)g.Sum(p => p.t.BudgetAmt)),
Actual = String.Format(
"{0:$#,0.00}"
, (System.Decimal?)g.Sum(p => p.t.ActualAmt)),
Encumbered = String.Format(
"{0:$#,0.00}"
, (System.Decimal?)g.Sum(p => p.t.EncAmt)),
Committed = String.Format(
"{0:$#,0.00}"
, (System.Decimal?)(g.Sum(p => p.t.ActualAmt) + g.Sum(p => p.t.EncAmt))),
PercentCommitted = String.Format(
"{0:0.00}%"
, g.Sum(p => p.t.BudgetAmt) > 0 ? ((g.Sum(p => p.t.ActualAmt) + g.Sum(p => p.t.EncAmt)) / g.Sum(p => p.t.BudgetAmt)) * 100 : 0),
Remaining = String.Format(
"{0:$#,0.00}"
, (System.Decimal?)(g.Sum(p => p.t.BudgetAmt) - (g.Sum(p => p.t.ActualAmt) + g.Sum(p => p.t.EncAmt))))
};
DataTable dtPrevFYObjTotals =
new
DataTable();
dtPrevFYObjTotals.TableName =
"PrevFYObjTotals"
;
dtPrevFYObjTotals.Columns.Add(
"Fund"
,
typeof
(
string
));
dtPrevFYObjTotals.Columns.Add(
"Resp"
,
typeof
(
string
));
dtPrevFYObjTotals.Columns.Add(
"Obj"
,
typeof
(
string
));
dtPrevFYObjTotals.Columns.Add(
"Obj_Desc"
,
typeof
(
string
));
dtPrevFYObjTotals.Columns.Add(
"Budget"
,
typeof
(
string
));
dtPrevFYObjTotals.Columns.Add(
"Actual"
,
typeof
(
string
));
dtPrevFYObjTotals.Columns.Add(
"Encumbered"
,
typeof
(
string
));
dtPrevFYObjTotals.Columns.Add(
"Committed"
,
typeof
(
string
));
dtPrevFYObjTotals.Columns.Add(
"PercentCommitted"
,
typeof
(
string
));
dtPrevFYObjTotals.Columns.Add(
"Remaining"
,
typeof
(
string
));
keys =
new
DataColumn[3];
keys[0] = dtPrevFYObjTotals.Columns[
"Fund"
];
keys[1] = dtPrevFYObjTotals.Columns[
"Resp"
];
keys[2] = dtPrevFYObjTotals.Columns[
"Obj"
];
dtPrevFYObjTotals.PrimaryKey = keys;
dataset.Tables.Add(dtPrevFYObjTotals);
foreach
(var item
in
prevFYObjTotals)
{
dtPrevFYObjTotals.Rows.Add(
new
object
[] { item.Fund, item.Resp, item.Obj, item.Obj_Desc, item.Budget, item.Actual, item.Encumbered, item.Committed, item.PercentCommitted, item.Remaining });
}
// Create Relationships
// Fund DataTable to Resp DataTable relationship
DataRelation FundRespRelation =
new
DataRelation(
"FundResp"
, dataset.Tables[
"PrevFYFundTotals"
].Columns[
"Fund"
],
dataset.Tables[
"PrevFYRespTotals"
].Columns[
"Fund"
]);
// Resp DataTable to Obj DataTable
DataRelation RespObjRelation =
new
DataRelation(
"RespObj"
, dataset.Tables[
"PrevFYRespTotals"
].Columns[
"Resp"
],
dataset.Tables[
"PrevFYObjTotals"
].Columns[
"Resp"
]);
// there may not be records all the way down...
dataset.EnforceConstraints =
false
;
dataset.Relations.Add(FundRespRelation);
dataset.Relations.Add(RespObjRelation);
return
dataset;
}
protected
void
RadGrid1_ColumnCreated(
object
sender, GridColumnCreatedEventArgs e)
{
if
(e.Column.UniqueName ==
"Fund"
)
e.Column.Visible =
false
;
else
if
(e.Column.UniqueName ==
"Resp"
)
e.Column.Visible =
false
;
else
if
(e.Column.UniqueName ==
"Obj"
)
e.Column.Visible =
false
;
else
if
(e.Column.HeaderText.Contains(
"Desc"
))
{
e.Column.HeaderText =
"Account Description"
;
e.Column.HeaderStyle.HorizontalAlign = HorizontalAlign.Center;
e.Column.HeaderStyle.VerticalAlign = VerticalAlign.Bottom;
if
(e.OwnerTableView.Name ==
""
)
e.Column.HeaderStyle.Width = Unit.Pixel(350);
else
if
(e.OwnerTableView.Name ==
"PrevFYRespTotals"
)
e.Column.HeaderStyle.Width = Unit.Pixel(265);
else
e.Column.HeaderStyle.Width = Unit.Pixel(240);
}
else
if
(e.Column.HeaderText ==
"Budget"
)
{
e.Column.HeaderText =
"Annual Budget"
;
e.Column.HeaderStyle.HorizontalAlign = HorizontalAlign.Right;
e.Column.HeaderStyle.VerticalAlign = VerticalAlign.Bottom;
e.Column.HeaderStyle.Width = Unit.Pixel(100);
e.Column.ItemStyle.HorizontalAlign = HorizontalAlign.Right;
}
else
if
(e.Column.HeaderText ==
"Actual"
)
{
e.Column.HeaderText =
"Actual Spent"
;
e.Column.HeaderStyle.HorizontalAlign = HorizontalAlign.Right;
e.Column.HeaderStyle.VerticalAlign = VerticalAlign.Bottom;
e.Column.HeaderStyle.Width = Unit.Pixel(100);
e.Column.ItemStyle.HorizontalAlign = HorizontalAlign.Right;
}
else
if
(e.Column.HeaderText ==
"Encumbered"
)
{
e.Column.HeaderText =
"Unpaid Purchase Orders"
;
e.Column.HeaderStyle.HorizontalAlign = HorizontalAlign.Right;
e.Column.HeaderStyle.VerticalAlign = VerticalAlign.Bottom;
e.Column.HeaderStyle.Width = Unit.Pixel(100);
e.Column.ItemStyle.HorizontalAlign = HorizontalAlign.Right;
}
else
if
(e.Column.HeaderText ==
"Committed"
)
{
e.Column.HeaderText =
"Total Committed"
;
e.Column.HeaderStyle.HorizontalAlign = HorizontalAlign.Right;
e.Column.HeaderStyle.VerticalAlign = VerticalAlign.Bottom;
e.Column.HeaderStyle.Width = Unit.Pixel(100);
e.Column.ItemStyle.HorizontalAlign = HorizontalAlign.Right;
}
else
if
(e.Column.HeaderText ==
"Percent Committed"
)
{
e.Column.HeaderText =
"Percent Committed"
;
e.Column.HeaderStyle.HorizontalAlign = HorizontalAlign.Right;
e.Column.HeaderStyle.VerticalAlign = VerticalAlign.Bottom;
e.Column.HeaderStyle.Width = Unit.Pixel(50);
e.Column.ItemStyle.HorizontalAlign = HorizontalAlign.Right;
}
else
if
(e.Column.HeaderText ==
"Remaining"
)
{
e.Column.HeaderText =
"Remaining Budget"
;
e.Column.HeaderStyle.HorizontalAlign = HorizontalAlign.Right;
e.Column.HeaderStyle.VerticalAlign = VerticalAlign.Bottom;
e.Column.HeaderStyle.Width = Unit.Pixel(100);
e.Column.ItemStyle.HorizontalAlign = HorizontalAlign.Right;
}
}
<
add
name
=
"Telerik_Web_UI_WebResource_axd"
path
=
"Telerik.Web.UI.WebResource.axd"
type
=
"Telerik.Web.UI.WebResource"
verb
=
"*"
preCondition
=
"integratedMode,runtimeVersionv2.0"
/>
<telerik:RadCodeBlock ID="RadCodeBlock1" runat="server">
<script type="text/javascript">
function OnCommand(sender, args) {
// it is doing nothing
}
</script>
</telerik:RadCodeBlock>
void OnItemCommand(object source, Telerik.Web.UI.GridCommandEventArgs e)
{
if (e.Item == null)
return;
switch (e.CommandName)
{
// user defined
case "Standard":
GridDataItem item = (GridDataItem)e.Item;
// e.g id is always Id of the first item in radgrid if ClientEvents-OnCommand is defined