Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / UI / WebControls / TemplateColumn.cs / 1 / TemplateColumn.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls { using System; using System.Collections; using System.ComponentModel; using System.Web; using System.Web.UI; using System.Security.Permissions; ////// // [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] [AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)] public class TemplateColumn : DataGridColumn { private ITemplate headerTemplate; private ITemplate footerTemplate; private ITemplate itemTemplate; private ITemplate editItemTemplate; ///Defines the template for controls layout within a /// ////// column. /// Initializes a new instance of the public TemplateColumn() { } ///class. /// /// [ Browsable(false), DefaultValue(null), WebSysDescription(SR.TemplateColumn_EditItemTemplate), PersistenceMode(PersistenceMode.InnerProperty), TemplateContainer(typeof(DataGridItem)) ] public virtual ITemplate EditItemTemplate { get { return editItemTemplate; } set { editItemTemplate = value; OnColumnChanged(); } } ///Specifies the ///that defines how items in edit mode are rendered. /// [ Browsable(false), DefaultValue(null), WebSysDescription(SR.TemplateColumn_FooterTemplate), PersistenceMode(PersistenceMode.InnerProperty), TemplateContainer(typeof(DataGridItem)) ] public virtual ITemplate FooterTemplate { get { return footerTemplate; } set { footerTemplate = value; OnColumnChanged(); } } ///Specifies the ///that defines how the control footer is rendered. /// [ Browsable(false), DefaultValue(null), WebSysDescription(SR.TemplateColumn_HeaderTemplate), PersistenceMode(PersistenceMode.InnerProperty), TemplateContainer(typeof(DataGridItem)) ] public virtual ITemplate HeaderTemplate { get { return headerTemplate; } set { headerTemplate = value; OnColumnChanged(); } } ///Specifies the ////// that defines how the control header is rendered. /// [ Browsable(false), DefaultValue(null), WebSysDescription(SR.TemplateColumn_ItemTemplate), PersistenceMode(PersistenceMode.InnerProperty), TemplateContainer(typeof(DataGridItem)) ] public virtual ITemplate ItemTemplate { get { return itemTemplate; } set { itemTemplate = value; OnColumnChanged(); } } ///Specifies the ///that defines how items are rendered. /// /// public override void InitializeCell(TableCell cell, int columnIndex, ListItemType itemType) { base.InitializeCell(cell, columnIndex, itemType); ITemplate contentTemplate = null; switch (itemType) { case ListItemType.Header: contentTemplate = headerTemplate; break; case ListItemType.Footer: contentTemplate = footerTemplate; break; case ListItemType.Item: case ListItemType.AlternatingItem: case ListItemType.SelectedItem: contentTemplate = itemTemplate; break; case ListItemType.EditItem: if (editItemTemplate != null) contentTemplate = editItemTemplate; else goto case ListItemType.Item; break; } if (contentTemplate != null) { // The base class might have added a control or some text for some cases // such as header text which need to be removed before // the corresponding template is used. // Note that setting text also has the effect of clearing out any controls. cell.Text = String.Empty; contentTemplate.InstantiateIn(cell); } else { if (itemType == ListItemType.Item || itemType == ListItemType.AlternatingItem || itemType == ListItemType.SelectedItem || itemType == ListItemType.EditItem) { cell.Text = " "; } } } } }
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- WinCategoryAttribute.cs
- TraceHandlerErrorFormatter.cs
- TypeToken.cs
- ReceiveSecurityHeaderElementManager.cs
- ByteFacetDescriptionElement.cs
- IncrementalReadDecoders.cs
- TableLayoutPanelCellPosition.cs
- TableLayout.cs
- ConfigsHelper.cs
- SmiXetterAccessMap.cs
- ColumnResult.cs
- ChunkedMemoryStream.cs
- HtmlLabelAdapter.cs
- _ListenerAsyncResult.cs
- ItemMap.cs
- ToolStripDropDownClosingEventArgs.cs
- PersonalizablePropertyEntry.cs
- CheckBoxDesigner.cs
- PixelFormat.cs
- AnimationTimeline.cs
- Rotation3DKeyFrameCollection.cs
- RightsManagementUser.cs
- ListParaClient.cs
- ResourcesBuildProvider.cs
- RuleSettingsCollection.cs
- Crypto.cs
- EdmProviderManifest.cs
- SerializerWriterEventHandlers.cs
- ParseChildrenAsPropertiesAttribute.cs
- QueryExpr.cs
- TemplatedAdorner.cs
- MediaElementAutomationPeer.cs
- Serialization.cs
- SingletonInstanceContextProvider.cs
- XhtmlBasicPhoneCallAdapter.cs
- NonVisualControlAttribute.cs
- Metadata.cs
- InputMethodStateTypeInfo.cs
- MutexSecurity.cs
- BooleanKeyFrameCollection.cs
- MetadataItem_Static.cs
- PersonalizationProviderCollection.cs
- WorkflowPrinting.cs
- VisualStateChangedEventArgs.cs
- ProcessThread.cs
- RightsManagementPermission.cs
- CorePropertiesFilter.cs
- ZipIOModeEnforcingStream.cs
- PermissionRequestEvidence.cs
- DbConnectionPoolCounters.cs
- IconBitmapDecoder.cs
- FieldToken.cs
- RootBrowserWindowAutomationPeer.cs
- ImageSourceConverter.cs
- ListComponentEditor.cs
- AssertUtility.cs
- PropertyChangeTracker.cs
- CodeTypeMember.cs
- TemplateNameScope.cs
- ZoneMembershipCondition.cs
- SplitterCancelEvent.cs
- DataViewManager.cs
- Stack.cs
- MobileListItemCollection.cs
- UntrustedRecipientException.cs
- COM2FontConverter.cs
- ByeMessage11.cs
- Set.cs
- CacheAxisQuery.cs
- SpotLight.cs
- Event.cs
- NavigationProgressEventArgs.cs
- ObjectManager.cs
- ThreadPool.cs
- smtpconnection.cs
- TokenizerHelper.cs
- Command.cs
- ValidationSummaryDesigner.cs
- FormatVersion.cs
- PrintDialog.cs
- WindowsListViewScroll.cs
- AuthenticationManager.cs
- PackagingUtilities.cs
- TrackingProfileSerializer.cs
- ParenExpr.cs
- DropTarget.cs
- PngBitmapDecoder.cs
- AlignmentXValidation.cs
- FloaterParagraph.cs
- RelatedEnd.cs
- ScrollContentPresenter.cs
- SerialPinChanges.cs
- ProfileInfo.cs
- DbProviderServices.cs
- ClipboardProcessor.cs
- LazyTextWriterCreator.cs
- Pts.cs
- ContextMenuStrip.cs
- RouteParameter.cs
- PrintDialogException.cs