Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / UI / WebControls / TemplateColumn.cs / 1305376 / 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;
///
/// Defines the template for controls layout within a
///
/// column.
///
//
public class TemplateColumn : DataGridColumn {
private ITemplate headerTemplate;
private ITemplate footerTemplate;
private ITemplate itemTemplate;
private ITemplate editItemTemplate;
///
/// Initializes a new instance of the class.
///
public TemplateColumn() {
}
///
/// Specifies the that defines how items in edit mode are rendered.
///
[
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 the control footer is 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 header 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 items are 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();
}
}
///
///
///
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 = " ";
}
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
//
// 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;
///
/// Defines the template for controls layout within a
///
/// column.
///
//
public class TemplateColumn : DataGridColumn {
private ITemplate headerTemplate;
private ITemplate footerTemplate;
private ITemplate itemTemplate;
private ITemplate editItemTemplate;
///
/// Initializes a new instance of the class.
///
public TemplateColumn() {
}
///
/// Specifies the that defines how items in edit mode are rendered.
///
[
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 the control footer is 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 header 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 items are 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();
}
}
///
///
///
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 = " ";
}
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DetailsViewDeleteEventArgs.cs
- ObjectToIdCache.cs
- HebrewCalendar.cs
- EventSinkActivityDesigner.cs
- EditingMode.cs
- TimeZoneNotFoundException.cs
- WpfWebRequestHelper.cs
- SchemaCompiler.cs
- InputLanguageEventArgs.cs
- BindingNavigatorDesigner.cs
- FigureParagraph.cs
- ProviderConnectionPointCollection.cs
- FixedPageProcessor.cs
- MouseButtonEventArgs.cs
- Byte.cs
- FixedDocument.cs
- XmlElementAttribute.cs
- TextCompositionManager.cs
- DirectoryObjectSecurity.cs
- IPPacketInformation.cs
- BinaryCommonClasses.cs
- XmlParserContext.cs
- TextDecoration.cs
- SoapElementAttribute.cs
- ToolStripSettings.cs
- LinkArea.cs
- InvalidOleVariantTypeException.cs
- DrawingAttributes.cs
- TextAdaptor.cs
- EasingKeyFrames.cs
- DbParameterCollection.cs
- dbdatarecord.cs
- ArrayElementGridEntry.cs
- LinearQuaternionKeyFrame.cs
- ToolStripPanelRow.cs
- ActivityValidationServices.cs
- PropertyCondition.cs
- QuaternionAnimationUsingKeyFrames.cs
- TransactionContextValidator.cs
- codemethodreferenceexpression.cs
- UpDownEvent.cs
- ContextMenuStrip.cs
- DictionaryBase.cs
- Triplet.cs
- StateInitialization.cs
- DocumentApplication.cs
- OutputCacheSection.cs
- Operators.cs
- Control.cs
- FutureFactory.cs
- TreeNode.cs
- BitmapSourceSafeMILHandle.cs
- ConfigurationSection.cs
- ImageDrawing.cs
- LastQueryOperator.cs
- DrawToolTipEventArgs.cs
- SignedInfo.cs
- MessageBox.cs
- CodeTypeDelegate.cs
- HandlerBase.cs
- TableCellCollection.cs
- DataGridViewColumnHeaderCell.cs
- KeyFrames.cs
- BatchParser.cs
- VisualBasicSettingsConverter.cs
- Lasso.cs
- SessionSwitchEventArgs.cs
- FileRecordSequenceHelper.cs
- DetailsViewRow.cs
- Viewport3DAutomationPeer.cs
- PageThemeCodeDomTreeGenerator.cs
- ColumnWidthChangingEvent.cs
- TransactionTable.cs
- TriggerCollection.cs
- Mutex.cs
- Validator.cs
- MultiSelectRootGridEntry.cs
- WebServiceEndpoint.cs
- ConfigurationPermission.cs
- MdiWindowListItemConverter.cs
- SqlConnectionHelper.cs
- SelectionEditor.cs
- FixedSOMTableRow.cs
- BindingOperations.cs
- ControlPaint.cs
- CompatibleIComparer.cs
- XmlNodeList.cs
- TemplateControlCodeDomTreeGenerator.cs
- WorkflowPersistenceContext.cs
- UpdateCompiler.cs
- EntityDescriptor.cs
- ToolStripItemCollection.cs
- InstanceKeyCompleteException.cs
- ClosableStream.cs
- ThreadInterruptedException.cs
- EntryWrittenEventArgs.cs
- DesignerLinkAdapter.cs
- Message.cs
- SerializableAttribute.cs
- TraceListener.cs