Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / UI / WebControls / EditCommandColumn.cs / 1 / EditCommandColumn.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.UI.WebControls {
using System;
using System.Collections;
using System.ComponentModel;
using System.Web.UI;
using System.Security.Permissions;
///
/// Creates a special column with buttons for ,
/// , and commands to edit items
/// within the selected row.
///
[AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)]
public class EditCommandColumn : DataGridColumn {
///
/// Initializes a new instance of an class.
///
public EditCommandColumn() {
}
///
/// Indicates the button type for the column.
///
[
DefaultValue(ButtonColumnType.LinkButton)
]
public virtual ButtonColumnType ButtonType {
get {
object o = ViewState["ButtonType"];
if (o != null)
return(ButtonColumnType)o;
return ButtonColumnType.LinkButton;
}
set {
if (value < ButtonColumnType.LinkButton || value > ButtonColumnType.PushButton) {
throw new ArgumentOutOfRangeException("value");
}
ViewState["ButtonType"] = value;
OnColumnChanged();
}
}
///
/// Indicates the text to display for the command button
/// in the column.
///
[
Localizable(true),
DefaultValue("")
]
public virtual string CancelText {
get {
object o = ViewState["CancelText"];
if (o != null)
return(string)o;
return String.Empty;
}
set {
ViewState["CancelText"] = value;
OnColumnChanged();
}
}
[
DefaultValue(true),
]
public virtual bool CausesValidation {
get {
object o = ViewState["CausesValidation"];
if (o != null) {
return (bool)o;
}
return true;
}
set {
ViewState["CausesValidation"] = value;
OnColumnChanged();
}
}
///
/// Indicates the text to display for the command button in
/// the column.
///
[
Localizable(true),
DefaultValue("")
]
public virtual string EditText {
get {
object o = ViewState["EditText"];
if (o != null)
return(string)o;
return String.Empty;
}
set {
ViewState["EditText"] = value;
OnColumnChanged();
}
}
///
/// Indicates the text to display for the command button
/// in the column.
///
[
Localizable(true),
DefaultValue("")
]
public virtual string UpdateText {
get {
object o = ViewState["UpdateText"];
if (o != null)
return(string)o;
return String.Empty;
}
set {
ViewState["UpdateText"] = value;
OnColumnChanged();
}
}
[
DefaultValue(""),
]
public virtual string ValidationGroup {
get {
object o = ViewState["ValidationGroup"];
if (o != null) {
return (string)o;
}
return String.Empty;
}
set {
ViewState["ValidationGroup"] = value;
OnColumnChanged();
}
}
private void AddButtonToCell(TableCell cell, string commandName, string buttonText, bool causesValidation, string validationGroup) {
WebControl buttonControl = null;
ControlCollection controls = cell.Controls;
ButtonColumnType buttonType = ButtonType;
if (buttonType == ButtonColumnType.LinkButton) {
LinkButton button = new DataGridLinkButton();
buttonControl = button;
button.CommandName = commandName;
button.Text = buttonText;
button.CausesValidation = causesValidation;
button.ValidationGroup = validationGroup;
}
else {
Button button = new Button();
buttonControl = button;
button.CommandName = commandName;
button.Text = buttonText;
button.CausesValidation = causesValidation;
button.ValidationGroup = validationGroup;
}
controls.Add(buttonControl);
}
///
/// Initializes a cell within the column.
///
public override void InitializeCell(TableCell cell, int columnIndex, ListItemType itemType) {
base.InitializeCell(cell, columnIndex, itemType);
bool causesValidation = CausesValidation;
if ((itemType != ListItemType.Header) &&
(itemType != ListItemType.Footer)) {
if (itemType == ListItemType.EditItem) {
ControlCollection controls = cell.Controls;
AddButtonToCell(cell, DataGrid.UpdateCommandName, UpdateText, causesValidation, ValidationGroup);
LiteralControl spaceControl = new LiteralControl(" ");
controls.Add(spaceControl);
AddButtonToCell(cell, DataGrid.CancelCommandName, CancelText, false, String.Empty);
}
else {
AddButtonToCell(cell, DataGrid.EditCommandName, EditText, false, String.Empty);
}
}
}
}
}
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- PositiveTimeSpanValidatorAttribute.cs
- UrlUtility.cs
- LoadRetryAsyncResult.cs
- DateTimeFormatInfoScanner.cs
- PrintDialogException.cs
- SystemSounds.cs
- MetadataPropertyAttribute.cs
- ScriptManager.cs
- DocComment.cs
- ObjectSecurity.cs
- EventTask.cs
- DataTableMapping.cs
- AuthorizationSection.cs
- SchemaReference.cs
- ExpressionLink.cs
- VariantWrapper.cs
- XamlReaderHelper.cs
- DataGridViewCellStateChangedEventArgs.cs
- TableParaClient.cs
- COAUTHIDENTITY.cs
- DoubleUtil.cs
- FusionWrap.cs
- HeaderUtility.cs
- DatatypeImplementation.cs
- StreamWriter.cs
- MultiSelectRootGridEntry.cs
- wgx_exports.cs
- UIElement3D.cs
- LinqDataSourceValidationException.cs
- MachinePropertyVariants.cs
- ValidateNames.cs
- StylusPointDescription.cs
- OutputScopeManager.cs
- Filter.cs
- GroupPartitionExpr.cs
- FlowDecisionDesigner.xaml.cs
- ConfigXmlCDataSection.cs
- NullExtension.cs
- BaseServiceProvider.cs
- PerformanceCounterManager.cs
- TextBox.cs
- NativeMethods.cs
- SerializationEventsCache.cs
- SqlAliaser.cs
- XPathItem.cs
- GridViewEditEventArgs.cs
- DesignerLinkAdapter.cs
- DictionarySectionHandler.cs
- RectangleGeometry.cs
- ProxyManager.cs
- SerializationAttributes.cs
- StackBuilderSink.cs
- ScaleTransform.cs
- ApplicationServiceHelper.cs
- ListChangedEventArgs.cs
- SatelliteContractVersionAttribute.cs
- LinqToSqlWrapper.cs
- ProgressChangedEventArgs.cs
- EntityContainer.cs
- DeferredSelectedIndexReference.cs
- ListViewGroupConverter.cs
- AssemblyBuilder.cs
- prompt.cs
- Table.cs
- RC2.cs
- RadialGradientBrush.cs
- CheckPair.cs
- StackSpiller.Generated.cs
- IUnknownConstantAttribute.cs
- BezierSegment.cs
- NetworkInformationPermission.cs
- WebPartMovingEventArgs.cs
- XmlSchema.cs
- CustomExpressionEventArgs.cs
- HtmlWindow.cs
- ItemMap.cs
- FormViewModeEventArgs.cs
- TrackingProfileCache.cs
- prompt.cs
- UserControlAutomationPeer.cs
- TargetConverter.cs
- XmlSerializerSection.cs
- PopupControlService.cs
- WindowsListViewSubItem.cs
- XmlSchemaParticle.cs
- FileInfo.cs
- HtmlElementEventArgs.cs
- SiteMapNodeCollection.cs
- SafeMILHandle.cs
- CacheForPrimitiveTypes.cs
- UTF8Encoding.cs
- XmlSchema.cs
- Symbol.cs
- ExpressionBuilderContext.cs
- FontInfo.cs
- CompilerGlobalScopeAttribute.cs
- SystemResourceHost.cs
- RectAnimationClockResource.cs
- TypeElement.cs
- Calendar.cs