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
- Part.cs
- GridItemProviderWrapper.cs
- mactripleDES.cs
- InputMethod.cs
- DbTypeMap.cs
- Pair.cs
- SurrogateSelector.cs
- __Error.cs
- StatusBarAutomationPeer.cs
- WmpBitmapEncoder.cs
- ConfigXmlElement.cs
- PointCollection.cs
- RoutedCommand.cs
- ContentOperations.cs
- mda.cs
- RowToFieldTransformer.cs
- HostedHttpContext.cs
- Stackframe.cs
- XmlRawWriterWrapper.cs
- WebPartsPersonalization.cs
- DotAtomReader.cs
- TextTreeTextNode.cs
- Vector.cs
- GuidelineSet.cs
- ServiceOperation.cs
- PieceDirectory.cs
- DataSvcMapFile.cs
- FormViewModeEventArgs.cs
- IERequestCache.cs
- TrustSection.cs
- DataViewManager.cs
- SqlPersonalizationProvider.cs
- StyleModeStack.cs
- JoinCqlBlock.cs
- CodeSnippetTypeMember.cs
- CodeComment.cs
- PrePrepareMethodAttribute.cs
- XPathDocumentNavigator.cs
- HTTP_SERVICE_CONFIG_URLACL_KEY.cs
- OdbcCommand.cs
- IndexingContentUnit.cs
- StateWorkerRequest.cs
- ArrayList.cs
- BeginStoryboard.cs
- RtfToXamlReader.cs
- ProxyWebPartConnectionCollection.cs
- Underline.cs
- TreeNodeBindingCollection.cs
- ValidateNames.cs
- InputScopeManager.cs
- SendingRequestEventArgs.cs
- AdCreatedEventArgs.cs
- SoapEnumAttribute.cs
- Int32.cs
- WebColorConverter.cs
- FrameworkElementFactory.cs
- BlobPersonalizationState.cs
- MethodMessage.cs
- DataColumn.cs
- ConnectionManagementElement.cs
- VisualStateChangedEventArgs.cs
- ToolboxComponentsCreatedEventArgs.cs
- VisualStyleRenderer.cs
- WebPartConnectionsConfigureVerb.cs
- BackgroundWorker.cs
- ControlBuilderAttribute.cs
- TemplatedWizardStep.cs
- FontSourceCollection.cs
- Margins.cs
- HttpException.cs
- BackStopAuthenticationModule.cs
- CompositeCollectionView.cs
- DataBindingExpressionBuilder.cs
- HtmlInputButton.cs
- SqlWebEventProvider.cs
- _Connection.cs
- HideDisabledControlAdapter.cs
- DataGridTableCollection.cs
- NavigatorOutput.cs
- SqlResolver.cs
- HebrewCalendar.cs
- PreviewPageInfo.cs
- ReplyAdapterChannelListener.cs
- IxmlLineInfo.cs
- XmlTextEncoder.cs
- RadioButtonList.cs
- SectionUpdates.cs
- MetadataPropertyvalue.cs
- WorkflowServiceNamespace.cs
- UndirectedGraph.cs
- EntityProviderServices.cs
- BoundsDrawingContextWalker.cs
- Drawing.cs
- FixedSOMGroup.cs
- PageRequestManager.cs
- _ConnectOverlappedAsyncResult.cs
- CatchDesigner.xaml.cs
- DataGridViewCheckBoxColumn.cs
- HtmlHead.cs
- ElementHost.cs