Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / DynamicData / DynamicData / DynamicEntity.cs / 1305376 / DynamicEntity.cs
using System.ComponentModel; using System.Diagnostics.CodeAnalysis; using System.Drawing; using System.Globalization; using System.Web.DynamicData.Util; using System.Web.Resources; using System.Web.UI; using System.Web.UI.WebControls; namespace System.Web.DynamicData { [ToolboxBitmap(typeof(DynamicEntity), "DynamicEntity.bmp")] public class DynamicEntity : Control { private HttpContextBase _context; [ DefaultValue(DataBoundControlMode.ReadOnly), Category("Behavior"), ResourceDescription("DynamicEntity_Mode") ] public DataBoundControlMode Mode { get { var value = ViewState["Mode"]; return value != null ? (DataBoundControlMode)value : DataBoundControlMode.ReadOnly; } set { ViewState["Mode"] = value; } } [ DefaultValue(""), Category("Behavior"), ResourceDescription("DynamicControlFieldCommon_UIHint") ] public string UIHint { get { return (string)ViewState["UIHint"] ?? String.Empty; } set { ViewState["UIHint"] = value; } } [ Category("Behavior"), DefaultValue(""), Themeable(false), ResourceDescription("DynamicControlFieldCommon_ValidationGroup") ] public string ValidationGroup { get { return (string)ViewState["ValidationGroup"] ?? String.Empty; } set { ViewState["ValidationGroup"] = value; } } private new HttpContextBase Context { get { return _context ?? new HttpContextWrapper(HttpContext.Current); } } public DynamicEntity() { } // for unit testing internal DynamicEntity(HttpContextBase context) : this() { _context = context; } [SuppressMessage("Microsoft.Security", "CA2109:ReviewVisibleEventHandlers", MessageId = "0#")] protected override void OnLoad(EventArgs e) { base.OnLoad(e); if (DesignMode) { return; } MetaTable table = MetaTableHelper.FindMetaTable(this, Context); if (table == null) { throw new InvalidOperationException(String.Format(CultureInfo.CurrentCulture, DynamicDataResources.DynamicEntity_ControlNeedsToExistInAContextSupportingDynamicData, this.ID)); } EntityTemplateFactory entityTemplateFactory = table.Model.EntityTemplateFactory; EntityTemplateUserControl entityTemplateControl = entityTemplateFactory.CreateEntityTemplate(table, Mode, UIHint); if (entityTemplateControl == null) { throw new InvalidOperationException(String.Format(CultureInfo.CurrentCulture, DynamicDataResources.DynamicEntity_CantFindTemplate, table.Name, entityTemplateFactory.TemplateFolderVirtualPath)); } entityTemplateControl.Mode = Mode; entityTemplateControl.ValidationGroup = ValidationGroup; entityTemplateControl.Table = table; Controls.Add(entityTemplateControl); } protected override void Render(HtmlTextWriter writer) { if (DesignMode) { writer.Write("[" + GetType().Name + "]"); } else { base.Render(writer); } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- MappingMetadataHelper.cs
- XPathDocument.cs
- ConfigViewGenerator.cs
- ACE.cs
- PermissionSetTriple.cs
- PerformanceCounterPermissionEntry.cs
- DnsPermission.cs
- GiveFeedbackEventArgs.cs
- DPAPIProtectedConfigurationProvider.cs
- DateTimeValueSerializer.cs
- ADMembershipProvider.cs
- InputBinding.cs
- UInt64Storage.cs
- PageWrapper.cs
- MemberAssignmentAnalysis.cs
- ValidationHelper.cs
- DBBindings.cs
- AppSettingsReader.cs
- KeySpline.cs
- ConnectionsZone.cs
- Exceptions.cs
- FailedToStartupUIException.cs
- PEFileEvidenceFactory.cs
- Addressing.cs
- Literal.cs
- XmlDataSourceNodeDescriptor.cs
- SafeCertificateContext.cs
- TableItemPattern.cs
- WebPartRestoreVerb.cs
- PackageDigitalSignature.cs
- PreservationFileReader.cs
- DataSetUtil.cs
- DataGridViewAutoSizeColumnModeEventArgs.cs
- CompareValidator.cs
- HttpCacheParams.cs
- ProfileModule.cs
- ComponentRenameEvent.cs
- StoreContentChangedEventArgs.cs
- DbParameterHelper.cs
- GraphicsContainer.cs
- SessionEndingCancelEventArgs.cs
- XamlSerializerUtil.cs
- XmlIgnoreAttribute.cs
- SerializationAttributes.cs
- HyperLinkStyle.cs
- StatusBar.cs
- MessageSmuggler.cs
- DependencyStoreSurrogate.cs
- DataGridViewRowEventArgs.cs
- IItemProperties.cs
- PropertyNames.cs
- HighlightComponent.cs
- EventLogException.cs
- PageTheme.cs
- ReadContentAsBinaryHelper.cs
- ParserOptions.cs
- ErrorFormatter.cs
- DetailsViewDeletedEventArgs.cs
- FileSecurity.cs
- ReflectionTypeLoadException.cs
- CodeLinePragma.cs
- ProfilePropertySettingsCollection.cs
- WindowAutomationPeer.cs
- DataGridViewColumnHeaderCell.cs
- MailMessageEventArgs.cs
- UnmanagedMemoryStreamWrapper.cs
- ConsoleEntryPoint.cs
- XPathNodeIterator.cs
- CmsUtils.cs
- HybridWebProxyFinder.cs
- ToolStripTextBox.cs
- BamlStream.cs
- SHA512.cs
- SqlXmlStorage.cs
- ObjectDataSourceChooseTypePanel.cs
- FunctionImportElement.cs
- SessionEndedEventArgs.cs
- IFlowDocumentViewer.cs
- SafeCoTaskMem.cs
- Timer.cs
- XmlSignificantWhitespace.cs
- FormViewDeleteEventArgs.cs
- DbgUtil.cs
- Int16Storage.cs
- StrongNameKeyPair.cs
- AuthenticationConfig.cs
- InputLangChangeRequestEvent.cs
- LayoutInformation.cs
- SafeProcessHandle.cs
- CompilerGlobalScopeAttribute.cs
- TextTreeTextNode.cs
- WebPartsPersonalizationAuthorization.cs
- GPStream.cs
- ClockController.cs
- HandlerWithFactory.cs
- HttpCookieCollection.cs
- DocComment.cs
- ReadOnlyNameValueCollection.cs
- TextTreeRootTextBlock.cs
- SvcMapFileSerializer.cs