Code:
/ DotNET / DotNET / 8.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
- StringResourceManager.cs
- Parallel.cs
- ToolboxItemAttribute.cs
- DateTimeSerializationSection.cs
- DataGridState.cs
- BlockCollection.cs
- XslAst.cs
- XmlParserContext.cs
- RegistryPermission.cs
- UIServiceHelper.cs
- GestureRecognizer.cs
- TextEditorContextMenu.cs
- WinEventQueueItem.cs
- ActivityBuilder.cs
- WindowsPen.cs
- PaperSize.cs
- WebPartConnectionsCancelEventArgs.cs
- StyleModeStack.cs
- XamlFigureLengthSerializer.cs
- ActivationServices.cs
- TextComposition.cs
- DataSourceViewSchemaConverter.cs
- UnsafeNativeMethods.cs
- WebPartExportVerb.cs
- DataPagerFieldCollection.cs
- ObjectListCommandsPage.cs
- SvcMapFileLoader.cs
- GeometryValueSerializer.cs
- FixedSOMTableCell.cs
- LinqDataSourceHelper.cs
- ToolboxComponentsCreatedEventArgs.cs
- Calendar.cs
- FlagsAttribute.cs
- GACIdentityPermission.cs
- BufferAllocator.cs
- EventLogStatus.cs
- BaseDataListDesigner.cs
- SoapEnumAttribute.cs
- SqlWriter.cs
- ProcessProtocolHandler.cs
- ExtendedPropertyCollection.cs
- LostFocusEventManager.cs
- OdbcConnectionStringbuilder.cs
- DiagnosticSection.cs
- LogicalExpr.cs
- FunctionNode.cs
- SslStream.cs
- BindingContext.cs
- FormsAuthenticationCredentials.cs
- TextRunTypographyProperties.cs
- UnsignedPublishLicense.cs
- HandlerMappingMemo.cs
- DataGridViewLayoutData.cs
- StringWriter.cs
- ServerIdentity.cs
- ViewStateException.cs
- XmlSchemaNotation.cs
- VisualTreeUtils.cs
- TextParagraph.cs
- DataSvcMapFileSerializer.cs
- DoubleKeyFrameCollection.cs
- WorkflowMarkupSerializationManager.cs
- InputBuffer.cs
- Html32TextWriter.cs
- ArrayList.cs
- WebPartExportVerb.cs
- loginstatus.cs
- ReferencedType.cs
- Int32CAMarshaler.cs
- NativeStructs.cs
- WeakReadOnlyCollection.cs
- QueueProcessor.cs
- PointConverter.cs
- ExpressionBuilderCollection.cs
- SamlDoNotCacheCondition.cs
- LineInfo.cs
- ConfigurationLockCollection.cs
- ValueTable.cs
- FunctionNode.cs
- MessageQueueTransaction.cs
- ColorConvertedBitmap.cs
- XmlUTF8TextWriter.cs
- MemoryPressure.cs
- MtomMessageEncoder.cs
- NavigateEvent.cs
- Config.cs
- CharUnicodeInfo.cs
- TextProperties.cs
- ValidationResult.cs
- XhtmlTextWriter.cs
- UserPreferenceChangingEventArgs.cs
- DataServiceHostFactory.cs
- WhitespaceSignificantCollectionAttribute.cs
- DynamicFilterExpression.cs
- Assert.cs
- ContainerSelectorGlyph.cs
- MSAANativeProvider.cs
- DynamicUpdateCommand.cs
- MatrixTransform.cs
- DataTableReader.cs