var
listBox = $find("<%= rlbSelectedContacts.ClientID %>");
var arr = [];
for (var i = 0; i < 10; i++) {
var item = new Telerik.Web.UI.RadListBoxItem();
item.set_text(
"text" + i);
arr[i] = item;
}
listBox.insertItems(arr);
var tableView = $find("<%= RadGrid1.ClientID %>").get_masterTableView();
I am getting get_masterTableView() null.
<form runat="server" id="mainForm" method="post">
<telerik:RadScriptManager runat="server" ID="ScriptManager1">
</telerik:RadScriptManager>
<!-- content start -->
<telerik:RadAjaxManager ID="RadAjaxManager1" runat="server">
<ajaxsettings>
<telerik:AjaxSetting AjaxControlID="RadGrid1">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="RadGrid1" LoadingPanelID="RadAjaxLoadingPanel1" />
</UpdatedControls>
</telerik:AjaxSetting>
</ajaxsettings>
</telerik:RadAjaxManager>
<telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" runat="server" />
<telerik:RadGrid ID="RadGrid1" runat="server" AutoGenerateColumns="False"
AllowSorting="True" AllowMultiRowSelection="False" AllowPaging="True" PageSize="5"
GridLines="None"
OnItemCreated="RadGrid1_ItemCreated"
MasterTableView-AllowMultiColumnSorting="false"
OnItemCommand="RadGrid1_ItemCommand"
onsortcommand="RadGrid1_SortCommand1" >
<pagerstyle mode="NumericPages"></pagerstyle>
<mastertableview datakeynames="IssueID" allowmulticolumnsorting="false" grouploadmode="Server">
<NestedViewTemplate>
<asp:Panel runat="server" ID="InnerContainer" CssClass="viewWrap" Visible="false">
<telerik:RadTabStrip runat="server" ID="TabStip1" MultiPageID="Multipage1"
SelectedIndex="0">
<Tabs>
<telerik:RadTab runat="server" Text="ViewIssue" PageViewID="PageView1">
</telerik:RadTab>
</Tabs>
</telerik:RadTabStrip>
<telerik:RadMultiPage runat="server" ID="Multipage1" SelectedIndex="0" RenderSelectedPageOnly="false">
<telerik:RadPageView runat="server" ID="PageView1">
<telerik:RadGrid runat="server" ID="OrdersGrid" AutoGenerateColumns="False" AllowMultiRowSelection="False" >
<MasterTableView ShowHeader="true" AutoGenerateColumns="False" HierarchyLoadMode="ServerOnDemand">
<NoRecordsTemplate>
Records Not Found
</NoRecordsTemplate>
<Columns>
<telerik:GridNumericColumn SortExpression="Description" HeaderText="Description" HeaderButtonType="TextButton"
DataField="Description" UniqueName="Description">
</telerik:GridNumericColumn>
<telerik:GridBoundColumn SortExpression="CSTComments" HeaderText="CSTComments" HeaderButtonType="TextButton"
DataField="CSTComments" UniqueName="CSTComments" Aggregate="Count">
</telerik:GridBoundColumn>
<telerik:GridDateTimeColumn SortExpression="AnalystComments" HeaderText="AnalystComments" HeaderButtonType="TextButton"
DataField="AnalystComments" UniqueName="AnalystComments" >
</telerik:GridDateTimeColumn>
</Columns>
</MasterTableView>
</telerik:RadGrid>
</telerik:RadPageView>
</telerik:RadMultiPage>
</asp:Panel>
</NestedViewTemplate>
<Columns>
<telerik:GridBoundColumn SortExpression="CoName" HeaderText="CoName" HeaderButtonType="TextButton"
DataField="CoName" UniqueName="CoName">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn SortExpression="ScenarioName" HeaderText="ScenarioName" HeaderButtonType="TextButton"
DataField="ScenarioName" UniqueName="ScenarioName">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn SortExpression="Subject" HeaderText="Subject" HeaderButtonType="TextButton"
DataField="Subject" UniqueName="Subject">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn SortExpression="IssueDate"
HeaderText="IssueDate" HeaderButtonType="TextButton" DataField="IssueDate" UniqueName="IssueDate">
</telerik:GridBoundColumn>
</Columns>
</mastertableview>
<clientsettings allowdragtogroup="true" />
</telerik:RadGrid>
</form>
------------------------------------ code behind....................................................................................
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
sortExpr.FieldName =
"CoName";
sortExpr.SortOrder =
GridSortOrder.Ascending;
//Add sort expression, which will sort against first column
RadGrid1.MasterTableView.SortExpressions.AddSortExpression(sortExpr);
BindMasterGrid();
}
}
private void BindMasterGrid()
{
try
{
dsIssueData = moIssueTrackBL.GetIssueDetails(0, 82, 0);
RadGrid1.DataSource =
null;
RadGrid1.DataBind();
if (dsIssueData.Tables[0] != null && dsIssueData.Tables[0].Rows.Count > 0)
{
RadGrid1.DataSource = dsIssueData.Tables[0];
RadGrid1.DataBind();
}
}
catch (Exception)
{
throw;
}
}
protected void RadGrid1_ItemCommand(object source, GridCommandEventArgs e)
{
if (e.CommandName == RadGrid.ExpandCollapseCommandName)
{
((
GridDataItem)e.Item).ChildItem.FindControl("InnerContainer").Visible = !e.Item.Expanded;
GridDataItem item=(GridDataItem)e.Item;
iIssueID =
Convert.ToInt32(item.OwnerTableView.DataKeyValues[item.ItemIndex]["IssueID"].ToString());
dsViewIssueData = moIssueTrackBL.GetViewIssueDetails(iIssueID);
RadGrid OrdersGrid = (RadGrid)((GridDataItem)e.Item).ChildItem.FindControl("OrdersGrid");
OrdersGrid.DataSource = dsViewIssueData.Tables[0];
OrdersGrid.DataBind();
}
}
protected void RadGrid1_ItemCreated(object sender, GridItemEventArgs e)
{
if (e.Item is GridNestedViewItem)
{
e.Item.FindControl(
"InnerContainer").Visible = ((GridNestedViewItem)e.Item).ParentItem.Expanded;
}
}
protected void RadGrid1_SortCommand1(object source, GridSortCommandEventArgs e)
{
switch (e.OldSortOrder)
{
case GridSortOrder.None:
sortExpr.FieldName = e.SortExpression;
sortExpr.SortOrder =
GridSortOrder.Ascending;
e.Item.OwnerTableView.SortExpressions.AddSortExpression(sortExpr);
break;
case GridSortOrder.Ascending:
sortExpr.FieldName = e.SortExpression;
sortExpr.SortOrder =
GridSortOrder.Descending;
e.Item.OwnerTableView.SortExpressions.AddSortExpression(sortExpr);
break;
case GridSortOrder.Descending:
sortExpr.FieldName = e.SortExpression;
sortExpr.SortOrder =
GridSortOrder.Ascending;
e.Item.OwnerTableView.SortExpressions.AddSortExpression(sortExpr);
break;
}
}
Hi Telerik
I am creating and grouping grid dynamically (refer 1.jpg attached image here). In this grid I need to freeze first one or two columns. This I can achieve using below code.
<ClientSettings>
<Scrolling FrozenColumnsCount="2" SaveScrollPosition="true" UseStaticHeaders="true"
AllowScroll="True" />
</ClientSettings>
But when I am scrolling to last then I surprised. Because some of last columns are not being visible completely (refer 2.jpg).
At the same time another problem is, the Column freezing is not working for other grid which is in other tab (refer 3.jpg and 4.jpg). Even all the grids I am binding together at a time.
Please help me to sort out this problem.