You've already forked linux-packaging-mono
Imported Upstream version 4.6.0.125
Former-commit-id: a2155e9bd80020e49e72e86c44da02a8ac0e57a4
This commit is contained in:
parent
a569aebcfd
commit
e79aa3c0ed
@ -0,0 +1,207 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <copyright file="EditCommandColumn.cs" company="Microsoft">
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// </copyright>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace System.Web.UI.WebControls {
|
||||
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.ComponentModel;
|
||||
using System.Web.UI;
|
||||
|
||||
/// <devdoc>
|
||||
/// <para>Creates a special column with buttons for <see langword='Edit'/>,
|
||||
/// <see langword='Update'/>, and <see langword='Cancel'/> commands to edit items
|
||||
/// within the selected row.</para>
|
||||
/// </devdoc>
|
||||
public class EditCommandColumn : DataGridColumn {
|
||||
|
||||
|
||||
/// <devdoc>
|
||||
/// <para>Initializes a new instance of an <see cref='System.Web.UI.WebControls.EditCommandColumn'/> class.</para>
|
||||
/// </devdoc>
|
||||
public EditCommandColumn() {
|
||||
}
|
||||
|
||||
|
||||
|
||||
/// <devdoc>
|
||||
/// <para>Indicates the button type for the column.</para>
|
||||
/// </devdoc>
|
||||
[
|
||||
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();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/// <devdoc>
|
||||
/// <para>Indicates the text to display for the <see langword='Cancel'/> command button
|
||||
/// in the column.</para>
|
||||
/// </devdoc>
|
||||
[
|
||||
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();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/// <devdoc>
|
||||
/// <para>Indicates the text to display for the <see langword='Edit'/> command button in
|
||||
/// the column.</para>
|
||||
/// </devdoc>
|
||||
[
|
||||
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();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/// <devdoc>
|
||||
/// <para>Indicates the text to display for the <see langword='Update'/> command button
|
||||
/// in the column.</para>
|
||||
/// </devdoc>
|
||||
[
|
||||
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);
|
||||
}
|
||||
|
||||
|
||||
/// <devdoc>
|
||||
/// <para>Initializes a cell within the column.</para>
|
||||
/// </devdoc>
|
||||
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);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user