or
" DataTextField
"
of the AutoComplete" SearchDataColumn "
and we can add a separate column of sql with ","I'm trying to figure out why my first RadGrid with a RadComboBox filter isn't firing when selected.
I've been following the examples online and it doesn't post back.
I'm thinking I need a server side function to force the post back but since the examples didn't have it...
Any ideas? And yes, I disabled Linq for this control.
<%@ Page Title="" Language="C#" MasterPageFile="~/Site1.Master" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication1.WebForm1" %>
<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>
<
asp:Content
ID
=
"Content1"
ContentPlaceHolderID
=
"head"
runat
=
"server"
>
</
asp:Content
>
<
asp:Content
ID
=
"Content2"
ContentPlaceHolderID
=
"ContentPlaceHolder1"
runat
=
"server"
>
<
telerik:RadMenu
ID
=
"RadMenu1"
runat
=
"server"
DataNavigateUrlField
=
"Url"
DataSourceID
=
"XmlDataSource1"
DataTextField
=
"Text"
Skin
=
"Windows7"
></
telerik:RadMenu
>
<
asp:XmlDataSource
ID
=
"XmlDataSource1"
runat
=
"server"
DataFile
=
"~/App_Data/XMLFile1.xml"
></
asp:XmlDataSource
>
<
telerik:RadAjaxManager
ID
=
"RadAjaxManager1"
runat
=
"server"
>
<
AjaxSettings
>
<
telerik:AjaxSetting
AjaxControlID
=
"RadGrid1"
>
<
UpdatedControls
>
<
telerik:AjaxUpdatedControl
ControlID
=
"RadGrid1"
/>
</
UpdatedControls
>
</
telerik:AjaxSetting
>
</
AjaxSettings
>
</
telerik:RadAjaxManager
>
<
telerik:RadAjaxLoadingPanel
ID
=
"RadAjaxLoadingPanel1"
runat
=
"server"
/>
<
telerik:RadGrid
ID
=
"RadGrid1"
runat
=
"server"
CellSpacing
=
"0"
DataSourceID
=
"SqlDataSource1"
GridLines
=
"None"
AllowFilteringByColumn
=
"True"
AllowPaging
=
"True"
AllowSorting
=
"True"
AutoGenerateDeleteColumn
=
"True"
AutoGenerateEditColumn
=
"True"
ShowGroupPanel
=
"True"
Skin
=
"Windows7"
Width
=
"100%"
EnableLinqExpressions
=
"false"
ShowStatusBar
=
"true"
OnPreRender
=
"RadGrid1_PreRender"
>
<
ClientSettings
AllowColumnsReorder
=
"True"
AllowDragToGroup
=
"True"
ReorderColumnsOnClient
=
"True"
>
<
Selecting
AllowRowSelect
=
"True"
/>
<
Scrolling
AllowScroll
=
"True"
UseStaticHeaders
=
"True"
ScrollHeight
=
"500"
/>
</
ClientSettings
>
<
MasterTableView
DataSourceID
=
"SqlDataSource1"
AutoGenerateColumns
=
"False"
>
<
CommandItemSettings
ExportToPdfText
=
"Export to PDF"
></
CommandItemSettings
>
<
RowIndicatorColumn
Visible
=
"True"
FilterControlAltText
=
"Filter RowIndicator column"
>
<
HeaderStyle
Width
=
"20px"
></
HeaderStyle
>
</
RowIndicatorColumn
>
<
ExpandCollapseColumn
Visible
=
"True"
FilterControlAltText
=
"Filter ExpandColumn column"
>
<
HeaderStyle
Width
=
"20px"
></
HeaderStyle
>
</
ExpandCollapseColumn
>
<
Columns
>
<
telerik:GridBoundColumn
DataField
=
"TABLE_CATALOG"
FilterControlAltText
=
"Filter TABLE_CATALOG column"
HeaderText
=
"TABLE_CATALOG"
ReadOnly
=
"True"
SortExpression
=
"TABLE_CATALOG"
UniqueName
=
"TABLE_CATALOG"
AllowFiltering
=
"false"
>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"TABLE_SCHEMA"
FilterControlAltText
=
"Filter TABLE_SCHEMA column"
HeaderText
=
"TABLE_SCHEMA"
ReadOnly
=
"True"
SortExpression
=
"TABLE_SCHEMA"
UniqueName
=
"TABLE_SCHEMA"
AllowFiltering
=
"false"
>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
HeaderStyle-Width
=
"300"
DataField
=
"TABLE_NAME"
FilterControlAltText
=
"Filter TABLE_NAME column"
HeaderText
=
"TABLE_NAME"
SortExpression
=
"TABLE_NAME"
UniqueName
=
"TABLE_NAME"
>
<
FilterTemplate
>
<
telerik:RadComboBox
ID
=
"RadComboBox1"
runat
=
"server"
AppendDataBoundItems
=
"true"
DataSourceID
=
"SqlDataSource2"
DataValueField
=
"table_name"
DataTextField
=
"table_name"
SelectedValue='<%# ((GridItem)Container).OwnerTableView.GetColumn("table_name").CurrentFilterValue %>' OnClientSelectedIndexChanged="table_nameChanged">
<
Items
>
<
telerik:RadComboBoxItem
Text
=
"All"
/>
</
Items
>
</
telerik:RadComboBox
>
<
telerik:RadScriptBlock
ID
=
"RadScriptBlock1"
runat
=
"server"
>
<
script
type
=
"text/javascript"
>
function table_nameChanged(sender, args) {
var tableView = $find("<%# ((GridItem)Container).OwnerTableView.ClientID %>");
tableView.filter("table_name", args.get_item().get_value(), "EqualTo");
}
</
script
>
</
telerik:RadScriptBlock
>
</
FilterTemplate
>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"COLUMN_NAME"
FilterControlAltText
=
"Filter COLUMN_NAME column"
HeaderText
=
"COLUMN_NAME"
SortExpression
=
"COLUMN_NAME"
UniqueName
=
"COLUMN_NAME"
AllowFiltering
=
"false"
>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"ORDINAL_POSITION"
DataType
=
"System.Int32"
FilterControlAltText
=
"Filter ORDINAL_POSITION column"
HeaderText
=
"ORDINAL_POSITION"
ReadOnly
=
"True"
SortExpression
=
"ORDINAL_POSITION"
UniqueName
=
"ORDINAL_POSITION"
AllowFiltering
=
"false"
>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"COLUMN_DEFAULT"
FilterControlAltText
=
"Filter COLUMN_DEFAULT column"
HeaderText
=
"COLUMN_DEFAULT"
ReadOnly
=
"True"
SortExpression
=
"COLUMN_DEFAULT"
UniqueName
=
"COLUMN_DEFAULT"
AllowFiltering
=
"false"
>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"IS_NULLABLE"
FilterControlAltText
=
"Filter IS_NULLABLE column"
HeaderText
=
"IS_NULLABLE"
ReadOnly
=
"True"
SortExpression
=
"IS_NULLABLE"
UniqueName
=
"IS_NULLABLE"
AllowFiltering
=
"false"
>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"DATA_TYPE"
FilterControlAltText
=
"Filter DATA_TYPE column"
HeaderText
=
"DATA_TYPE"
ReadOnly
=
"True"
SortExpression
=
"DATA_TYPE"
UniqueName
=
"DATA_TYPE"
AllowFiltering
=
"false"
>
</
telerik:GridBoundColumn
>
</
Columns
>
<
EditFormSettings
>
<
EditColumn
FilterControlAltText
=
"Filter EditCommandColumn column"
></
EditColumn
>
</
EditFormSettings
>
</
MasterTableView
>
<
FilterMenu
EnableImageSprites
=
"False"
></
FilterMenu
>
</
telerik:RadGrid
>
<
asp:SqlDataSource
ID
=
"SqlDataSource1"
runat
=
"server"
ConnectionString="<%$ ConnectionStrings:masterConnectionString %>" SelectCommand="select * from information_Schema.columns"></
asp:SqlDataSource
>
<
asp:SqlDataSource
ID
=
"SqlDataSource2"
runat
=
"server"
ConnectionString="<%$ ConnectionStrings:masterConnectionString %>" SelectCommand="select distinct table_name from information_Schema.columns"></
asp:SqlDataSource
>
</
asp:Content
>
using
System;
using
System.Collections.Generic;
using
System.Linq;
using
System.Web;
using
System.Web.UI;
using
System.Web.UI.WebControls;
using
Telerik.Web.UI.Skins;
namespace
WebApplication1
{
public
partial
class
WebForm1 : System.Web.UI.Page
{
protected
void
Page_Load(
object
sender, EventArgs e)
{
string
role = ((TextBox)Master.FindControl(
"TB_Role"
)).Text;
XmlDataSource1.XPath =
string
.Format(
"//Menu[@Role='{0}']/Item"
, role);
}
protected
void
RadGrid1_PreRender(
object
sender, System.EventArgs e)
{
if
(RadGrid1.MasterTableView.FilterExpression !=
string
.Empty)
{
RefreshCombos();
}
}
protected
void
RefreshCombos()
{
SqlDataSource1.SelectCommand = SqlDataSource2.SelectCommand +
" WHERE "
+ RadGrid1.MasterTableView.FilterExpression.ToString();
RadGrid1.MasterTableView.Rebind();
}
}
}
<telerik:RadTabStrip ID="AgencyTabs" runat="server" Width="100%" MultiPageID="multAgency"
CssClass="RadTabStrip" SelectedIndex="0">
<Tabs>
<telerik:RadTab Text="Agency Info"></telerik:RadTab>
<telerik:RadTab Text="Locations"></telerik:RadTab>
<telerik:RadTab Text="Users"></telerik:RadTab>
<telerik:RadTab Text="Download Info"></telerik:RadTab>
<telerik:RadTab Text="Load Presets"></telerik:RadTab>
<telerik:RadTab Text="Onboard / Upload Data Files"></telerik:RadTab>
</Tabs>
</telerik:RadTabStrip>
**I have attached an image of what the tabs look like when they render.
protected
void
Page_Init()
{
foreach
(usercontrol)
{
Control thisUC = LoadControl(usercontrol);
RadPageView thisPV =
new
RadPageView();
thisPV.ID = usercontrol.ToString()+
"PageView"
;
thisPV.Controls.Add(thisUC);
...
RadMultiPage1.PageViews.Add(thisPV);
RadTab thisTab =
new
RadTab();
thisTab.Text = usercontrol.ToString();
thisTab.PageViewID = usercontrol.ToString()+
"PageView"
;
RadTabStrip1.Tabs.Add(thisTab);
}
}
if
(collection.rows.Count > 0)
{
ScanNode =
new
RadTreeNode(
"View Scan: "
+ scan.CratedDate.ToShortDateString(), ScanID.ToString());
SetNavigationOnNode(ScanNode , User.GetApplicationPath() +
"/Imaging/Popup.aspx? <QuerySting Variable and their values> "
&Image=" + ImageID);
proceedingNode.Nodes.Add(proceedingScanNode);
}
SetNavigationOnNode
is a function and looks something like this:private
void
SetNavigationOnNode(RadTreeNode node,
string
url)
{
if
(needPopupJS)
node.Attributes.Add(
"onclick"
, GetRadWindowJS(url));
else
node.NavigateUrl = url;
}