protected
override
void
OnInit(EventArgs e)
{
RadTabStrip1.TabTemplate =
new
TabTemplate();
base
.OnInit(e);
}
protected
void
Page_Load(
object
sender, EventArgs e)
{
if
(!Page.IsPostBack)
BindUsers();
RadTabStrip1.DataBind();
}
private
void
BindUsers()
{
. .. . . . .
}
protected
void
ddlUsers_SelectedIndexChanged(
object
sender, EventArgs e)
{
if
(ddlUsers.SelectedIndex != 0)
{
if
(RadTabStrip1.Tabs.Count == 0)
{
RadTab Separator =
new
RadTab();
Separator.IsSeparator =
true
;
Separator.Width = Unit.Pixel(50);
RadTabStrip1.Tabs.Add(Separator);
RadTab tab1 =
new
RadTab(ddlUsers.SelectedItem.Text, ddlUsers.SelectedItem.Value);
RadTabStrip1.Tabs.Add(tab1);
RadTabStrip1.Tabs.FindTabByText(ddlUsers.SelectedItem.Text).Selected =
true
;
}
else
if
(RadTabStrip1.Tabs.Count > 0 && RadTabStrip1.FindTabByText(ddlUsers.SelectedItem.Text) ==
null
)
{
//RadTab Separator = new RadTab();
//Separator.IsSeparator = true;
//Separator.Width = Unit.Pixel(5);
//RadTabStrip1.Tabs.Add(Separator);
RadTab tab1 =
new
RadTab(ddlUsers.SelectedItem.Text, ddlUsers.SelectedItem.Value);
RadTabStrip1.Tabs.Add(tab1);
RadTabStrip1.Tabs.FindTabByText(ddlUsers.SelectedItem.Text).Selected =
true
;
}
else
RadTabStrip1.Tabs.FindTabByText(ddlUsers.SelectedItem.Text).Selected =
true
;
GetDashboards(ddlUsers.SelectedItem.Text);
}
else
{
ddlDashboards.Items.Clear();
ddlDashboards.DataSource = CreateEmptyDataTable();
ddlDashboards.DataTextField =
"DashboardTitle"
;
ddlDashboards.DataValueField =
"DashboardKey"
;
ddlDashboards.DataBind();
}
}
class
TabTemplate : ITemplate
{
public
void
InstantiateIn(Control container)
{
Label lbl =
new
Label();
lbl.ID =
"ItemLabel"
;
//lbl.Text = "";
lbl.DataBinding +=
new
EventHandler(lbl_DataBinding);
ImageButton ImgBtnClose =
new
ImageButton()
{
ImageUrl =
"../../Images/delete1.gif"
,
CssClass =
"image"
};
ImgBtnClose.Click +=
new
ImageClickEventHandler(ImgBtnClose_Click);
ImgBtnClose.Attributes.Add(
"onclick"
,
"return confirm('Do you want to close this tab.');"
);
container.Controls.Add(lbl);
container.Controls.Add(ImgBtnClose);
}
void
ImgBtnClose_Click(
object
sender, ImageClickEventArgs e)
{
ImageButton target = (ImageButton)sender;
RadTab tab = (RadTab)target.BindingContainer;
RadTabStrip tabStrip = (RadTabStrip)tab.Parent;
tabStrip.Tabs.Remove(tab);
}
private
void
lbl_DataBinding(
object
sender, EventArgs e)
{
Label target = (Label)sender;
RadTab tab = (RadTab)target.BindingContainer;
string
tabText = (
string
)DataBinder.Eval(tab,
"Text"
);
target.Text = tabText;
}
}
protected RadChart SetChartData(RadChart radChart, DataTable chartDataTable)
{
radChart.DataSource = chartDataTable;
radChart.Series.Add(CreateChartSeries("Assets", ChartSeriesType.Line, "Assets"));
radChart.Series[0].Appearance.LabelAppearance.Visible = false;
radChart.Series.Add(CreateChartSeries("Assets calibrations", ChartSeriesType.Point, Color.Red, "AssetCalibrations"));
//radChart.Series[1].Appearance.PointMark.FillStyle.MainColor = System.Drawing.Color.Red;
radChart.Series[1].Appearance.LabelAppearance.Visible = false;
return radChart;
}
which calls my CreateChartSeries method:-
protected ChartSeries CreateChartSeries(string name, ChartSeriesType type, Color seriesColor, string dataYColumn)
{
ChartSeries chartSeries = new ChartSeries();
chartSeries.Name = name;
chartSeries.Type = type;
if (type == Telerik.Charting.ChartSeriesType.Line) { chartSeries.Appearance.LineSeriesAppearance.Color = seriesColor; }
if (type == Telerik.Charting.ChartSeriesType.Point) { chartSeries.Appearance.PointMark.FillStyle.MainColor = seriesColor; }
chartSeries.DataYColumn = dataYColumn;
return chartSeries;
}
<
rad:RadGrid ID="rgAccountClass" runat="server"
onneeddatasource="rgAccountClass_NeedDataSource"
AllowAutomaticUpdates="True"
AutoGenerateColumns="false" EnableLinqExpressions="false"
AllowPaging="true" Skin="Default2006">
<PagerStyle Mode="Slider" />
<ClientSettings>
<Selecting AllowRowSelect="true" />
</ClientSettings>
<MasterTableView EditMode="EditForms">
<RowIndicatorColumn>
<HeaderStyle Width="20px"></HeaderStyle>
</RowIndicatorColumn>
<ExpandCollapseColumn>
<HeaderStyle Width="20px"></HeaderStyle>
</ExpandCollapseColumn>
<Columns>
<rad:GridEditCommandColumn ButtonType="ImageButton" UniqueName="EditCommand" EditImageUrl="Skins/Default2006/Grid/Edit.gif" />
<rad:GridBoundColumn UniqueName="AccountClassCode" DataField="AccountClassCode" HeaderText="Account Class" />
<rad:GridBoundColumn UniqueName="Description" DataField="Description" HeaderText="Description" />
<rad:GridTemplateColumn UniqueName="CycleBFlag2" EditFormColumnIndex="0">
<EditItemTemplate>
<asp:TextBox ID="txtTest" runat="server" />
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="lblCycleBFlag" runat="server" Text='<%# Bind("CycleBFlag") %>' />
</ItemTemplate>
</rad:GridTemplateColumn>
<rad:GridBoundColumn UniqueName="CycleBFlag" DataField="CycleBFlag" HeaderText="Cycle B Flag" />
<rad:GridBoundColumn UniqueName="ModifiedBy" DataField="ModifiedBy" HeaderText="Modified By" />
<rad:GridBoundColumn UniqueName="ModifiedDate" DataField="ModifiedDate" HeaderText="Modified Date" />
</Columns>
</MasterTableView>
<FilterMenu EnableTheming="True">
<CollapseAnimation Type="OutQuint" Duration="200"></CollapseAnimation>
</FilterMenu>
</rad:RadGrid>
I have tried several different ways to make this work and nothing seems to be right. I amsure I Am missing something simple. Any help would be appreciated.
Thanks, Dan
Hi,
I am having trouble using RadGrid on IE7 that is when I am selecting only one row to display by setting display none property of all the rows except one (that needs to be displayed) the the header and columns are rendered misaligned, as you can see in figure 1, plus the last column of header is also not displaying completely.
Figure 1
However when I set all the rows to display things are rendered fine (see figure 2) and also when I set only 1st row to display that also works fine as you can see in figure 3
Figure 2
Figure 3
The issue is not reproducible on IE8 and FireFox.
1. In my case, I set the root level filter to RadGrid1.MasterTableView.FilterExpression = "parentid = 0". This works as expected and only displays root level items, BUT, it never shows any children items b/c they are filtered out b/c of the filter expression. If I do not set the filter, I can expand the parent items to see the child items, but, the child items also appear as root items since there is no root level filter.
2. This is related to issue 1, when fitlering items at the root level, it never shows/filters any child items, again, b/c of the above filter where it is only showing items where parentid = 0..thus, the linq to sql expression only returns items where parentid = 0.
3. If I do not set the filter condition (which then allows me to see the hierarchal structure) and I filter items, is it possible to always show the parent row if the item itself is supposed to be a child item? For example, if the filter matches a child item, I want it to show the entire hierarchy of its parents even tho the parent might not match the filter condition.
Now, If I use a Parent-Child table structure, and not Self-Referencing is the following possible:
1. When filtering on a child table, it only filters the items under the currently expanded parent. Can I filter/show only parent items (along w/ child items) which child tables that match my filter criteria?
---
Also, how does the paging work w/ self-referencing..ie, if only displaying 25 items per page, will it grab all child items for all the root level items?
On a side note, we are currently on version 2010.3.1215.40 of the RadControls for ASP.NET AJAX, so please let me know if there were known issues for the past version.
Thanks