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,179 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <copyright file="DataPagerField.cs" company="Microsoft">
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// </copyright>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
using System;
|
||||
using System.ComponentModel;
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
|
||||
namespace System.Web.UI.WebControls {
|
||||
public abstract class DataPagerField : IStateManager {
|
||||
private StateBag _stateBag;
|
||||
private bool _trackViewState;
|
||||
private DataPager _dataPager;
|
||||
|
||||
internal event EventHandler FieldChanged;
|
||||
|
||||
protected DataPagerField() {
|
||||
_stateBag = new StateBag();
|
||||
}
|
||||
|
||||
protected StateBag ViewState {
|
||||
get {
|
||||
return _stateBag;
|
||||
}
|
||||
}
|
||||
|
||||
protected bool IsTrackingViewState {
|
||||
get {
|
||||
return _trackViewState;
|
||||
}
|
||||
}
|
||||
|
||||
protected DataPager DataPager {
|
||||
get {
|
||||
return _dataPager;
|
||||
}
|
||||
}
|
||||
|
||||
protected bool QueryStringHandled {
|
||||
get {
|
||||
return DataPager.QueryStringHandled;
|
||||
}
|
||||
set {
|
||||
DataPager.QueryStringHandled = value;
|
||||
}
|
||||
}
|
||||
|
||||
protected string QueryStringValue {
|
||||
get {
|
||||
return DataPager.QueryStringValue;
|
||||
}
|
||||
}
|
||||
|
||||
[
|
||||
Category("Behavior"),
|
||||
DefaultValue(true),
|
||||
ResourceDescription("DataPagerField_Visible")
|
||||
]
|
||||
public bool Visible {
|
||||
get {
|
||||
object o = ViewState["Visible"];
|
||||
if (o != null) {
|
||||
return (bool)o;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
set {
|
||||
if (value != Visible) {
|
||||
ViewState["Visible"] = value;
|
||||
OnFieldChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
protected internal DataPagerField CloneField() {
|
||||
DataPagerField newField = CreateField();
|
||||
CopyProperties(newField);
|
||||
return newField;
|
||||
}
|
||||
|
||||
protected virtual void CopyProperties(DataPagerField newField) {
|
||||
newField.Visible = Visible;
|
||||
}
|
||||
|
||||
public abstract void CreateDataPagers(DataPagerFieldItem container, int startRowIndex, int maximumRows, int totalRowCount, int fieldIndex);
|
||||
|
||||
protected abstract DataPagerField CreateField();
|
||||
|
||||
[SuppressMessage("Microsoft.Design", "CA1055:UriReturnValuesShouldNotBeStrings",
|
||||
Justification="Return value matches HyperLink.NavigateUrl property type.")]
|
||||
protected string GetQueryStringNavigateUrl(int pageNumber) {
|
||||
return DataPager.GetQueryStringNavigateUrl(pageNumber);
|
||||
}
|
||||
|
||||
[SuppressMessage("Microsoft.Security", "CA2109:ReviewVisibleEventHandlers", MessageId = "0#")]
|
||||
public abstract void HandleEvent(CommandEventArgs e);
|
||||
|
||||
protected virtual void LoadViewState(object savedState) {
|
||||
if (savedState != null) {
|
||||
object[] myState = (object[])savedState;
|
||||
|
||||
if (myState[0] != null)
|
||||
((IStateManager)ViewState).LoadViewState(myState[0]);
|
||||
}
|
||||
}
|
||||
|
||||
protected virtual void OnFieldChanged() {
|
||||
if (FieldChanged != null) {
|
||||
FieldChanged(this, EventArgs.Empty);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
protected virtual object SaveViewState() {
|
||||
object state = ((IStateManager)ViewState).SaveViewState();
|
||||
|
||||
if ((state != null)) {
|
||||
return new object[1] {
|
||||
state
|
||||
};
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
internal void SetDirty() {
|
||||
_stateBag.SetDirty(true);
|
||||
}
|
||||
|
||||
internal void SetDataPager(DataPager dataPager) {
|
||||
_dataPager = dataPager;
|
||||
}
|
||||
|
||||
protected virtual void TrackViewState() {
|
||||
_trackViewState = true;
|
||||
((IStateManager)ViewState).TrackViewState();
|
||||
}
|
||||
|
||||
#region IStateManager
|
||||
/// <internalonly/>
|
||||
/// <devdoc>
|
||||
/// Return true if tracking state changes.
|
||||
/// </devdoc>
|
||||
bool IStateManager.IsTrackingViewState {
|
||||
get {
|
||||
return IsTrackingViewState;
|
||||
}
|
||||
}
|
||||
|
||||
/// <internalonly/>
|
||||
/// <devdoc>
|
||||
/// Load previously saved state.
|
||||
/// </devdoc>
|
||||
void IStateManager.LoadViewState(object state) {
|
||||
LoadViewState(state);
|
||||
}
|
||||
|
||||
/// <internalonly/>
|
||||
/// <devdoc>
|
||||
/// Start tracking state changes.
|
||||
/// </devdoc>
|
||||
void IStateManager.TrackViewState() {
|
||||
TrackViewState();
|
||||
}
|
||||
|
||||
/// <internalonly/>
|
||||
/// <devdoc>
|
||||
/// Return object containing state changes.
|
||||
/// </devdoc>
|
||||
object IStateManager.SaveViewState() {
|
||||
return SaveViewState();
|
||||
}
|
||||
#endregion IStateManager
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user