public class CustomFilteredGridTemplateColumn : GridTemplateColumn
{
public override GridColumn Clone()
{
return base.Clone();
}
protected override void SetupFilterControls(System.Web.UI.WebControls.TableCell cell)
{
base.SetupFilterControls(cell);
cell.Controls.RemoveAt(0);
cell.Controls.AddAt(0,
new TextBox());
}
public override bool SupportsFiltering()
{
return true;
}
protected override string GetFilterDataField()
{
return this.DataField;
}
protected override void SetCurrentFilterValueToControl(TableCell cell)
{
base.SetCurrentFilterValueToControl(cell);
(cell.Controls[0]
as TextBox).Text = this.CurrentFilterValue;
}
protected override string GetCurrentFilterValueFromControl(TableCell cell)
{
return (cell.Controls[0] as TextBox).Text;
}
}
| <telerik:RadGrid ID="ShipmentHistoryGrid" runat="server" Skin="Web20" OnNeedDataSource="OnShipmentHistoryGridNeedDataSource" |
| ShowStatusBar="True" AutoGenerateColumns="False" GridLines="None" OnItemDataBound="OnItemDataBound" |
| AllowFilteringByColumn="true" AllowSorting="true"> |
| <PagerStyle Mode="NextPrevAndNumeric" /> |
| <MasterTableView DataKeyNames="PackageID" CommandItemDisplay="None" TableLayout="Fixed"> |
| <Columns> |
| <telerik:GridDateTimeColumn FilterControlWidth="90px" DataField="ShippingDate" UniqueName="Date" |
| HeaderText="Ship Date" DataFormatString="{0:d}" AutoPostBackOnFilter="true" ShowFilterIcon="false"> |
| <HeaderStyle Width="95px" /> |
| </telerik:GridDateTimeColumn> |
| <telerik:GridBoundColumn DataField="Pin" UniqueName="Pin" HeaderText="Pin" AutoPostBackOnFilter="true" |
| CurrentFilterFunction="Contains" ShowFilterIcon="false" > |
| <HeaderStyle Width="100px" /> |
| </telerik:GridBoundColumn> |
| <telerik:GridBoundColumn DataField="ShortService" UniqueName="ServiceType" HeaderText="Service" |
| AutoPostBackOnFilter="true" CurrentFilterFunction="Contains" ShowFilterIcon="false"> |
| <HeaderStyle Width="120px" /> |
| </telerik:GridBoundColumn> |
| <telerik:GridBoundColumn DataField="Contact" UniqueName="Contact" HeaderText="Name" |
| AutoPostBackOnFilter="true" CurrentFilterFunction="Contains" ShowFilterIcon="false"> |
| <HeaderStyle Width="100px" /> |
| </telerik:GridBoundColumn> |
| <telerik:GridBoundColumn DataField="City" UniqueName="City" HeaderText="City" AutoPostBackOnFilter="true" |
| CurrentFilterFunction="Contains" ShowFilterIcon="false"> |
| <HeaderStyle Width="100px" /> |
| </telerik:GridBoundColumn> |
| <telerik:GridBoundColumn FilterControlWidth="30px" DataField="Province" UniqueName="Province" HeaderText="Province" |
| AutoPostBackOnFilter="true" CurrentFilterFunction="Contains" ShowFilterIcon="false"> |
| <HeaderStyle Width="60px" /> |
| </telerik:GridBoundColumn> |
| <telerik:GridBoundColumn DataField="PostalCode" UniqueName="PostalCode" HeaderText="Postal Code" |
| AutoPostBackOnFilter="true" CurrentFilterFunction="Contains" ShowFilterIcon="false"> |
| <HeaderStyle Width="95px" /> |
| </telerik:GridBoundColumn> |
| <telerik:GridCheckBoxColumn DataField="IsVoid" UniqueName="IsVoid" Visible="false"> |
| </telerik:GridCheckBoxColumn> |
| <telerik:GridTemplateColumn UniqueName="VoidColumn" AllowFiltering="false" HeaderText="Void"> |
| <ItemTemplate> |
| <asp:Button ID="btnVoid" runat="server" OnClick="OnClickVoid" Text="Void" /> |
| <asp:Label ID="VoidLabel" runat="server" Text="Package Voided"></asp:Label> |
| </ItemTemplate> |
| <ItemStyle HorizontalAlign="Center"/> |
| <HeaderStyle HorizontalAlign="Center" /> |
| </telerik:GridTemplateColumn> |
| </Columns> |
| </MasterTableView> |
| <ClientSettings> |
| <Scrolling AllowScroll="true" UseStaticHeaders="true" /> |
| </ClientSettings> |
| </telerik:RadGrid> |
private void Page_PreRender(object sender, EventArgs e){ //this is the only way i know how to check what mode this grid control is operating in. bool isGridInsertion = Object.ReferenceEquals(this.DataItem.GetType(), new GridInsertionObject(new ArrayList()).GetType() ); if (isGridInsertion != true) //we check this because the below int assignment breaks on a grid insertion (since ProductTypeID has no value during our Insert form, only populated on Edit)
{ int productTypeID = (int)DataBinder.Eval(this.DataItem, "ProductTypeID"); // do stuff }}Hello,
if (e.CommandName == "viewQuals") { GridDataItem dataItem = (GridDataItem)e.Item; int id = int.Parse(dataItem["EIDColumn"].Text); ImageButton updateButton = dataItem["viewQualsColumn"].Controls[0] as ImageButton; updateButton.OnClientClick = "return viewQualsClick(" + id + ")"; }function viewQualsClick(id) { window.open("RES_MQ_new.aspx?empid=" + id, "", "width=550,height=700,resizable=yes,scrollbars=yes"); } function ajaxRefresh() { var ram = $find("<%= RadAjaxManager.ClientID %>"); ram.ajaxRequest("foo"); }
| <telerik:GridButtonColumn ButtonType="LinkButton" Text="Select" UniqueName="ButtonColumn"> |
| <HeaderStyle Width="50px" /> |
| </telerik:GridButtonColumn> |
| RadPanelItem SOISearchItem = (RadPanelItem)RadPanelBar1.FindItemByValue("SOISearch"); |
| RadGrid soiRadGrid = (RadGrid)SOISearchItem.FindControl("SoiRadGrid"); |
| LinkButton linkButton = (LinkButton)SOISearchItem.FindControl("LinkButton"); |
| if (soiRadGrid.SelectedItems.Count > 0) |
| { |
| GridItem selectedItem; |
| // grab selected row |
| } |
| Session[Tip.Utility.UIConstants.SoiSession] = soi; // soi is my class variable |
| Response.Redirect("SOI.aspx"); |
| <telerik:RadGrid ID="SoiRadGrid" runat="server" |
| AllowSorting="False" |
| GridLines="None" |
| Skin="WebBlue" |
| AllowFilteringByColumn="False" |
| AllowPaging="False" |
| ShowGroupPanel="True"> |
| <ClientSettings Resizing-AllowColumnResize="true" AllowKeyboardNavigation="false"></ClientSettings> |
| <MasterTableView AutoGenerateColumns="False" PageSize="5"> |
| <RowIndicatorColumn> |
| <HeaderStyle Width="20px" /> |
| </RowIndicatorColumn> |
| <ExpandCollapseColumn> |
| <HeaderStyle Width="20px" /> |
| </ExpandCollapseColumn> |
| <Columns> |
| <telerik:GridButtonColumn ButtonType="LinkButton" Text="Select" UniqueName="ButtonColumn"> |
| <HeaderStyle Width="50px" /> |
| </telerik:GridButtonColumn> |
| <telerik:GridBoundColumn DataField="ID" HeaderText="ID" Visible="false"></telerik:GridBoundColumn> |
| <telerik:GridBoundColumn DataField="Tier" HeaderText="Tier"></telerik:GridBoundColumn> |
| <telerik:GridBoundColumn DataField="Org" HeaderText="Org"></telerik:GridBoundColumn> |
| <telerik:GridBoundColumn DataField="ProjectGroup" HeaderText="Project Group"></telerik:GridBoundColumn> |
| <telerik:GridBoundColumn DataField="RequestingEntity" HeaderText="Requesting Entity"></telerik:GridBoundColumn> |
| <telerik:GridBoundColumn DataField="SubmittalDate" HeaderText="Submittal Date"></telerik:GridBoundColumn> |
| <telerik:GridBoundColumn DataField="ContactInfo" HeaderText="Contact Info"></telerik:GridBoundColumn> |
| <telerik:GridBoundColumn DataField="Unredacted" HeaderText="Unredacted"></telerik:GridBoundColumn> |
| <telerik:GridBoundColumn DataField="Redacted" HeaderText="Redacted"></telerik:GridBoundColumn> |
| </Columns> |
| </MasterTableView> |
| <ClientSettings AllowDragToGroup="True"> |
| <Scrolling AllowScroll="True" UseStaticHeaders="True" /> |
| </ClientSettings> |
| </telerik:RadGrid> |